1、今天在读取StreamingAssets文件夹中的文本文件的时候,出现了异常,花了一点时间去解决,把解决步骤结果进行梳理

2、文本文件夹所在位置:在StreamingAssets文件夹中新建一个文件名为AI_01的文本文件

3、文本文件中的内容,测试使用:

    [Idle]
    NoHealth>Dead
    SawPlayer>Pursuit

    [Dead]

    [Pursuit]
    NoHealth>Dead
    ReachPlayer>Attacking
    LosePlayer>Default

4、读取文本文件的代码:

 public static String Load(string aiConfigFile)
{
//1、构造 配置文件的完整路径
aiConfigFile = Path.Combine(Application.streamingAssetsPath, aiConfigFile); WWW www = new WWW(aiConfigFile);
//2、
while (true)
{
if (!string.IsNullOrEmpty(www.error))
{
throw new Exception("AI配置文件读取异常");
}
if (www.isDone)
{
return www.text;
} }
}

5、在其他的类中进行方法的调用来读取文件,获得其中的字符串文本

 [HideInInspector]
 //文件在StreamingAssets中的位置
public string aiConfigFile = "AI_01.txt"; //测试方法,来读取文件
private void Test()
{
  string temp= AIConfigurationReader.Load(aiConfigFile);
}

6、本来按常理来说是可以读取成功的,但是这个是会运行会显示AI_01配置文件读取异常

7、开始解决:

  7.1:以为是由于StreamingAssets文件的读取会因为平台的特殊性,后面进行了修改,依旧无法解决,参考解决方案:Unity官方手册

  7.2:后面觉得可能是文本文件的格式问题,进行了尝试,UTF-8和ANSI两种格式都试了,依旧无法解决

  7.3.1:检查了文件名是否正确,确认无错,则进行输出,这里就察觉到异常了:输出的路径只有StreamingAssets,没有后面的AI_01.txt,检查代码确定是进行了路径的连接了。

  7.3.2:发现路径无法正确的读取,猜测是动态的字段无法配合使用,所以把文件地址改为了static的进行测试

[HideInInspector]
public static string aiConfigFile = "AI_01.txt";

  7.3.3:这个时候运行正常,文件也正常读取出来了

8、在运行正常的基础上我又将其static删除,然后运行,这次又没有错误了,纠结中。。。。。。

9、总结:所以这里只给出建议,如果出现了和我一样的异常可以按照我给出的步骤来解决。

StreamingAssets文件夹的读取异常的更多相关文章

  1. Unity 从StreamingAssets文件夹和PersistentData文件夹 保存读取AssetBundle资源

    项目中的资源一般我们打包成AssetBundle格式 方便我们加载和热更 而AssetBundle文件 一般保存在StreamingAssets文件夹或则PersistentData文件夹 首先我们看 ...

  2. Resources与StreamingAssets文件夹的区别

    1.Resources文件夹  Resources文件夹是一个只读的文件夹,通过Resources.Load()来读取对象.因为这个文件夹下的所有资源都可以运行时来加载,所以Resources文件夹下 ...

  3. C# 代码实现设置用户"NETWORK SERVICE"具有对文件夹的读取权限。

    设置用户"NETWORK SERVICE"具有对文件夹的读取权限. 原帖地址: http://www.cnblogs.com/sjhrun2001/archive/2009/03/ ...

  4. R8—批量生成文件夹,批量读取文件夹名称+R文件管理系统操作函数

    一. 批量生成文件夹,批量读取文件夹名称 今日,工作中遇到这样一个问题:boss给我们提供了200多家公司的ID代码(如6007.7920等),需要根据这些ID号去搜索下载新闻,从而将下载到的新闻存到 ...

  5. linux根据该文件夹的读取权限和权限运行差异

    假设你linux下使用ls.细心的你会发现居然夹有权限运行.例如: drwxrwxr-x 11 cl cl 4096  9 25 14:22 ./ drwxr-xr-x 49 cl cl 4096 1 ...

  6. node遍历文件夹并读取文件内容

    var fs = require('fs'); var path = require('path');//解析需要遍历的文件夹 var filePath = path.resolve('./dist' ...

  7. uwp选取文件夹并读取其中的图片

    uwp对文件的操作和wpf,winform等等有很大的不同,主要原因是uwp对权限的要求比较严格,不能想从前那样随心所欲的读取文件. 1.首先找到Package.appxmanifest这个文件,在功 ...

  8. StreamingAssets文件夹在不同平台上的引用

    On a desktop computer (Mac OS or Windows) the location of the files can be obtained with the followi ...

  9. python 语料处理(从文件夹中读取文件夹中文件,分词,去停用词,去单个字)

    # -*- coding:utf8 -*- import os import jieba def splitSentence(inputFile): fin = open(inputFile, 'r' ...

随机推荐

  1. [Luogu 2590] ZJOI2008 树的统计

    [Luogu 2590] ZJOI2008 树的统计 裸树剖不解释. 比板子还简单. #include <algorithm> #include <cstdio> #inclu ...

  2. sqlserver 个人整理

    1.创建临时表(临时表的生命周期是当前回话中) //创建临时表是使用#+表名 //判断临时表是否存在 if object_id('tempdb..#ttt1') is not null Begin d ...

  3. bzoj 4378: [POI2015]Logistyka ——树桩数组+离散化

    Description 维护一个长度为n的序列,一开始都是0,支持以下两种操作:1.U k a 将序列中第k个数修改为a.2.Z c s 在这个序列上,每次选出c个正数,并将它们都减去1,询问能否进行 ...

  4. 【BZOJ】3566: [SHOI2014]概率充电器

    [算法]树型DP+期望DP [题意]一棵树上每个点均有直接充电概率qi%,每条边有导电概率pi%,问期望有多少结点处于充电状态? [题解]引用自:[BZOJ3566][SHOI2014]概率充电器 树 ...

  5. bzoj 1057 单调栈

    首先我们可以枚举每个一点,然后向下一直拓展到不能拓展为止,然后向下拓展的同时我们可以算出来向左最多拓展的个数,用单调栈来维护一个上升的序列,这样就类似与悬线法找最大01子矩阵了,但是对于这题01交替来 ...

  6. web-project 故障修复功能 传递所有的event_id数据到后台

    <script language=javascript> function IdentifyRepair(event_id) { var url; url = "/View/fa ...

  7. Mojo_1_第一个简单例子

    use Mojolicious::Lite; #根目录,Get方法打开 #正接显示文本text get '/' => sub{ my $service = shift; $service-> ...

  8. Java多态的实现原理

    1.多态的定义:指允许不同类的对象,对同一消息作出响应: 即同一消息可以根据发送对象的不同采用多种不同的行为方式: 2.多态的实现技术:动态绑定: 指在执行期间判断所引用对象的实际类型,根据其实际的类 ...

  9. defconfig file 的 位置

    Platform MSM8917 MSM8937 defconfig file position Android/kernel/msm-3.18/arch/arm/configs/

  10. 64_f1

    FUR-0.4.6-13.fc26.x86_64.rpm 13-Feb-2017 23:32 45882 Falcon-0.9.6.8-11.fc26.i686.rpm 13-Feb-2017 23: ...