这里主要是简单的文件读写,不推荐使用,最好用的还是PlayerPrefs。

using UnityEngine;
using System.Collections;
using System.IO;

public class MyFile : MonoBehaviour {

    public static bool IsActivated;
    public static int UserMoney;

    private static string filePath;

    void Start () {
        //不同的平台,filePath的值会不同
        string filePath = Application.persistentDataPath + Path.DirectorySeparatorChar + "save.txt";
        DontDestroyOnLoad(this);

        //加载数据
        LoadFile();
    }

    void Update () {

    }

    public static void SaveFile()
    {
        //先删除原来的文件
        if (File.Exists(filePath))
            File.Delete(filePath);

        FileStream file = new FileStream(filePath, FileMode.OpenOrCreate);
        StreamWriter sw = new StreamWriter(file);

        sw.WriteLine(IsActivated);
        sw.WriteLine(UserMoney);

        sw.Close();
        file.Close();
        file.Dispose();
    }

    public static void LoadFile()
    {
        if (File.Exists(filePath))
        {
            //按行读取,使用using结构从而自动释放reader对象
            //注意:这里不能调用SaveFile,因为SaveFile中会先删除该文件
            using (StreamReader reader = new StreamReader(filePath))
            {
                string value;

                if ((value = reader.ReadLine()) == null)
                {
                    Debug.Log("error : ISActivated");
                    return;
                }
                IsActivated = bool.Parse(value);

                if ((value = reader.ReadLine()) == null)
                {
                    Debug.Log("error :  UserMoney");
                    return;
                }
                UserMoney = int.Parse(value);
            }
        }
        else
        {
            //文件不存在时,初始化数据后保存数据
            IsActivated = false;
            UserMoney = ;
            SaveFile();
        }
    }
}
05-08 08:13