Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 统一:资源。加载不起作用_C#_Android_Unity3d_Resources_Assets - Fatal编程技术网

C# 统一:资源。加载不起作用

C# 统一:资源。加载不起作用,c#,android,unity3d,resources,assets,C#,Android,Unity3d,Resources,Assets,我似乎无法理解为什么资源不会加载到编辑器中,也不会加载到android设备上?文件hfba_25位于文件夹Assets>Resources>hfba_25 编辑1:textAsset始终返回为NULL如果textAsset始终为NULL,则它可能意味着两件事(由于您的代码): hfba_25文件在Resources子目录中不存在 该文件确实存在,但无法强制转换为TextAsset 要检查这两个选项中哪一个是正确的,您需要将代码更改为: string filePath = "hfba_25"; T

我似乎无法理解为什么资源不会加载到编辑器中,也不会加载到android设备上?文件
hfba_25
位于文件夹
Assets>Resources>hfba_25


编辑1:textAsset始终返回为
NULL

如果
textAsset
始终为
NULL
,则它可能意味着两件事(由于您的代码):

  • hfba_25
    文件在
    Resources
    子目录中不存在
  • 该文件确实存在,但无法强制转换为
    TextAsset
  • 要检查这两个选项中哪一个是正确的,您需要将代码更改为:

    string filePath = "hfba_25";
    TextAsset textAsset = Resources.Load(filePath) as TextAsset;
    string fileString = textAsset.text;
    
    然后在Unity内部运行并检查控制台

    如果您只得到
    Null
    ,则表示它是1(文件不存在)

    如果取而代之的是
    InvalidCastException:指定的强制转换无效。
    ,则表示它是2,文件存在,但不能强制转换为
    TextAsset
    类型


    这是因为在C#中,如果使用关键字
    as
    进行强制转换,当强制转换无效时,您不会得到异常,而是将引用设置为
    null

    ,如果
    textAsset
    始终为
    null
    ,则它可能意味着两件事(由于您的代码):

  • hfba_25
    文件在
    Resources
    子目录中不存在
  • 该文件确实存在,但无法强制转换为
    TextAsset
  • 要检查这两个选项中哪一个是正确的,您需要将代码更改为:

    string filePath = "hfba_25";
    TextAsset textAsset = Resources.Load(filePath) as TextAsset;
    string fileString = textAsset.text;
    
    然后在Unity内部运行并检查控制台

    如果您只得到
    Null
    ,则表示它是1(文件不存在)

    如果取而代之的是
    InvalidCastException:指定的强制转换无效。
    ,则表示它是2,文件存在,但不能强制转换为
    TextAsset
    类型


    这是因为在C#中,如果使用关键字
    as
    进行强制转换,当强制转换无效时,不会出现异常,而是将引用设置为
    null

    什么“不起作用”?你有任何错误信息吗?在
    fileString
    变量中得到了什么?@Hellium nothing我得到的textAsset为null,没有其他错误消息。是否检查文件格式是否受支持?什么“不起作用”?你有任何错误信息吗?在
    fileString
    变量中得到了什么?@Hellium nothing我得到的textAsset为null,没有其他错误消息。是否检查文件格式是否受支持?是的,你是对的。json文件在windows中另存为Type:File,而不是Type:json。谢谢男/女。是的,你说得对。json文件在windows中另存为Type:File,而不是Type:json。谢谢你。