ローカルファイルに書き込む場合は、System.IOのFileクラスを使う。基本的な手順は、
File.CreateText(filepath)
で、ファイルを作成し、
WriteLine(text)
で、一行ずつ書き込むと言うことになる。
最後にClose()でIOを閉じることも忘れずに。
using UnityEngine; using System.Collections; using System.IO; //for File I/O public class FileIO : MonoBehaviour { public string file; // Use this for initialization void Start () { if (File.Exists(file)) { Debug.Log(file+" already exists."); return; //if file exsists, then return } var sr = File.CreateText(file); //File class sr.WriteLine ("This is my file."); sr.WriteLine ("I can write ints {0} or floats {1}, and so on.", 1, 4.2); sr.Close(); //close process // Update is called once per frame void Update () { } } }
フィルパスは、絶対・相対どちらも可能。ただし、相対パスの場合、エディター内と実行ファイルでは基準点が違うことに注意。エディターではプロジェクトディレクトリが基準点になり、実行ファイルでは実行ファイルが置かれている場所になる。
if(Application.isEditor){ dir = "publish/output/"; }else{ dir = "D:/_roadsim_data/"; }
【参考】
TextWriter Class (System.IO)
Can we use System.IO and other .NET classes? | Unity Community