如何在File.ReadAllLines中使用资源文本文件?

时间:2017-01-27 11:40:51

标签: c# unity3d 2d-games

我有一个文件,里面有一些文件名,用于加载预制件。我正在使用File.ReadAllLines(hardPathToFile)加载文件,但是在构建时不起作用。您需要使用“资源”文件夹。所以我尝试使用Resource.Load(fileName)但是没有带出列表或数组。然后我尝试File.ReadAllLines(Resource.Load(fileName, typeOf(TextAsset)) as TextAsset)),但这不起作用,因为加载的资源不是字符串文件路径。

这是完整的代码:

void getList(string filePath)
{
    prefabObjects.Clear();
    //Read all the lines from the file. File loaded from resources

    print((Resources.Load(filePath, typeof(TextAsset)) as TextAsset).text);

    var prefabs = File.ReadAllLines((Resources.Load(filePath, typeof(TextAsset)) as TextAsset).text);
    print(prefabs);
    foreach (var prefab in prefabs)
    {
        print(prefab);
        GameObject newPrefab = Resources.Load(prefab, typeof(GameObject)) as GameObject;
        prefabObjects.Add(newPrefab);
    }
}

我怎样才能让它发挥作用?

所有帮助表示感谢,谢谢:)

1 个答案:

答案 0 :(得分:2)

如果您以前使用过该文件的硬路径,我猜你做了/path/to/file.txt之类的事情。使用Resources.Load(),您无需指定文件结尾(file.txt - > file)。

这是我在项目中所做的,以阅读文本文件的内容:

var api = Resources.Load("ConnectionString") as TextAsset;
var apiKey = api.text;