string filePath = "hfba_25";
TextAsset textAsset = Resources.Load(filePath) as TextAsset;
string fileString = textAsset.text;
我似乎无法弄明白为什么资源不会在编辑器中加载而且也不会在Android设备上加载?文件hfba_25
位于文件夹Assets > Resources > hfba_25
Edit_1:textAsset始终以NULL
答案 0 :(得分:1)
如果textAsset
始终为null
,则可能意味着两件事(由于您的代码):
hfba_25
subdir; Resources
文件
TextAsset
。要检查两者中哪一个为真,您需要将代码更改为:
TextAsset textAsset = (TextAsset)Resources.Load(filePath);
Debug.Log(textAsset);
然后在Unity内运行并检查控制台。
如果您刚刚获得Null
,则表示它为1(文件不存在)。
如果您获得InvalidCastException: Specified cast is not valid.
,则表示它为2,文件存在,但无法转换为TextAsset
类型。
这是因为在C#中,如果使用关键字as
进行投射,当投射无效时,您不会获得异常,而是将参考设置为null
。