ちょっとだけ使いやすくした。
どちらにしろ、MySaveData構造体は都合に合わせて作らないといけない。パラメータが多すぎる場合、メンバに配列をうまく使うしかない。
using UnityEngine;
using System.Collections;
using System.IO;
public class SaveData : MonoBehaviour {
MySaveData saveData;
MySaveData saveDataTest;
string fileName="saveData1.dat";
// Use this for initialization
void Start() {
saveData = new MySaveData{ a = 1,b=2,c=3 };
saveData.Save(fileName);
}
// Update is called once per frame
void Update () {
if(Input.GetKeyDown(KeyCode.Return))
{
print("return key was pressed :load");
saveDataTest.Load(fileName);
}
}
}
public struct MySaveData
{
public int a, b, c;
public void Load(string file)
{
using (var r = new BinaryReader(File.OpenRead(file)))
{
a = r.ReadInt32();
b = r.ReadInt32();
c = r.ReadInt32();
r.Close();
}
}
public void Save(string file)
{
using (var w = new BinaryWriter(File.OpenWrite(file)))
{
w.Write(a);
w.Write(b);
w.Write(c);
w.Close();
}
}
}