我的项目中有一堆JSON文件,我用它来加载级别。但是,我不知道在哪里可以找到它们的路径。它们位于我项目的Assets / Resources / LevelsData中。
我已经尝试了Application.dataPath + "Assets/Resources/LevelsData/"
,但似乎并没有出现。谁能告诉我使用Application.dataPath可以找到它?比如,在调用Application.dataPath之后,我要添加什么来获取assets文件夹?或者当我在iOS上运行时,项目的文件树是否会发生变化?
答案 0 :(得分:2)
如果文件放在资源文件夹 , 。这是因为Unity将文件编码为二进制形式并重命名。必须使用Application.dataPath + "/Assets/Resources/LevelsData/
读取Resources文件夹中的文件。
您需要Resources.Load
和Resources.Load
。
支持的TextAsset
格式:
.txt的 html的 热媒 .XML .bytes 以.json 的.csv .yaml .FNT
现在,让我们读一个位于TextAsset
的名为JsnFile1.json
的json文件。
Assets/Resources/LevelsData/
请注意,您没有将文件的扩展名放在void Start()
{
string jsonFileDir = "LevelsData/JsnFile1";
TextAsset jsonFile = Resources.Load(jsonFileDir, typeof(TextAsset)) as TextAsset;
Debug.Log(jsonFile.text);
}
函数中。如果你这样做,它就会失败。
让我们在Resources.Load
中加载名为Bullet的GameObject预制件。
Assets/Resources/LevelsData/
答案 1 :(得分:0)
Application.DataPath为您提供“/资产”,因此您必须使用
Application.dataPath + "/Resources/LevelsData/"
修改强>
对于IOS,它在文档页面上说明了这一点:
iOS播放器://数据(这个 文件夹是只读的,使用Application.persistentDataPath保存数据。)