Unity打包的时候保存默认的输出路径,再次使用该路径的时候读取之

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
using System.IO;
using System.Text;

public class LuGuoshuaiTest
{
    [MenuItem("LgsTest/BuildCloth/BuildSelect")]
    static void LgsTest()
    {
        string defaultPath = getDefaultPath();
        string buildPath = EditorUtility.SaveFolderPanel("Build Select Cloth", defaultPath, "");

        if (buildPath.Length > 0)
        {
            saveDefaultPath(buildPath);
        }
    }

    static void saveDefaultPath(string defaultPath)
    {
        string configPath = System.Environment.CurrentDirectory + "/path.init";
        using (FileStream fs = new FileStream(configPath, FileMode.Create))
        {
            using (StreamWriter sw = new StreamWriter(fs, Encoding.UTF8))
            {
                sw.Write(defaultPath);
            }
        }
    }

    static string getDefaultPath()
    {
        // System.Environment.CurrentDirectory : 在Unity中指工程的跟目录,即与Assets目录是平级的。
        string configPath = System.Environment.CurrentDirectory + "/path.init";
        string result = string.Empty;
        if (File.Exists(configPath))
        {
            using (FileStream fs = new FileStream(configPath, FileMode.Open))
            {
                using (StreamReader sr = new StreamReader(fs, Encoding.UTF8))
                {
                    result = sr.ReadToEnd();
                }
            }
        }
        else
        {
            //Application.dataPath 指Assets目录
            result = Application.dataPath;
        }

        return result;
    }
}

猜你喜欢

转载自www.cnblogs.com/luguoshuai/p/9147961.html