工作需要,需要读取txt文件中的内容,同时还需要更改文件的内容
1.读取文件时使用方法:
传入的filePathHead路径是unity可读路径(Application.streamingAssetsPath + "/"或者 Application.persistentDataPath + "/")
2.写入文件时使用的方法:
因为写入路径基本上只能用沙盒路径,所以FileReadAndWritePathHead = Application.persistentDataPath + "/"
3.问题:在unity运行的时候没有什么问题,但是发布安卓包之后不能读取文件信息,后来参照网上的问解明白了streamingAssets文件夹发布安卓包后路径会为jar:file:///xxxxx,这个路径是压缩过后的路径,File方法不能解压缩,也就是不能读取streamingAssets文件夹中的内容,所以最后选了个笨方法:
我把streamingAssets文件夹下的txt文件全部放入到了Resources文件夹下,然后在awake方法中把所有需要读写的txt文件复制到沙盒路径下,然后就能尽心读写了
4.读取文件中遇到的问题
因为我的txt文件中有多行,用的时候需要分行使用,所以在使用了TextAssets读取txt文件的内容后,需要使用List来把每行的内容进行存储,把TextAssets.text使用sqlit('\n')方法分离之后,打断点测试发现在前面多行之后多了\r,这个需要进行二次分离,接着用sqlit('\r')分离之后就能用了
网友评论