読者です 読者をやめる 読者になる 読者になる

さけのさかなのブログ

同人ゲーム開発やってます。Unity使ったりする。

テキストファイルを新規作成する

Unity

 Unityのエディタからテキストファイルを作れないっぽかったので拡張してみた。

 試してみると、どうもTextAssetをUnityの機能で新規に作るのは無理?じみていたので、File.CreateTextを呼ぶことに。
 いちいち書き方がダサいんだけど、ほんとにあってんのかしら。

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

namespace Hoge
{
    public class CreateFile
    {
        [MenuItem("Assets/Create text asset")]
        static void CreateTextAsset()
        {
            foreach (Object selectedObject in Selection.objects)
            {
                var path = AssetDatabase.GetAssetPath(selectedObject);
                if (!AssetDatabase.IsValidFolder(path))
                {
                    path = Path.GetDirectoryName(path);
                }

                path += Path.DirectorySeparatorChar + "新しいファイル.txt";
                path = AssetDatabase.GenerateUniqueAssetPath(path);
                path = Path.GetFullPath(path);

                File.CreateText(path);
                AssetDatabase.Refresh();
                Debug.Log(path);
            }
        }
    }
}