コード
using System; using System.IO; public class ScriptUtil { /// <summary> /// スクリプトをロードする /// ※スクリプト以外でもテキストファイルであればロードできる /// </summary> /// <param name="path">パス (Assets/からでよい)</param> /// <param name="lineAction">1行見込み毎に呼び出される</param> /// <param name="encode">エンコード指定 デフォルトは utf-8</param> private static void Load(string path, Action<string, int> lineAction, string encode = "utf-8") { var encoding = Encoding.GetEncoding(encode); using (var reader = new StreamReader(path, encoding)) { var line = 0; while (!reader.EndOfStream) lineAction?.Invoke(reader.ReadLine(), ++line); } } }
使い方
スクリプトを全行ロードして出力
ScriptUtil.Load("Assets/Script/Hoge.cs", (t, l) => { Debug.Log($"{l} {t}"); });