[转]关于Unity中文件读取 - 大世界
存储:
在程序发布后文件的存放有两种,第一种是打包到Uniyt的资源包中(*.unity3D),第二种就是把文件存放在一个特殊的目录 如:StreamingAssets,这个目录的东西Unity不会打包任何资源包中(但让除非你手动打包),但是发布的时候这个文件夹会被打包进程序 中,一起发布。
格式:
通过WWW加载:
一种是纯文本格式,如 txt,xml,csv等,这种纯文本试用原始扩展名即可。
一种是二进制,如果文件需要压缩,加密等等操作,需要把文件的扩展名改为.bytes.
使用WWW加载时需要注意编码格式为 utf8,如果它不能解析为utf8字符串,文本导入器会尽量带nonascii字。
代码中修改xml编码格式:
byte[] encodingData = Encoding.UTF8.GetBytes(m_strData);
System.IO.MemoryStream ms = new System.IO.MemoryStream(encodingData);
ms.Flush();
ms.Position = 0;
document.Load(ms)
通过C#加载:
任意格式.
读取:
第一种:
这种方法也分两种,一种是放到Resources文件夹下当Untiy 发布的时候会把这个文件夹下的所有资源打包成一个默认资源包一起发布出去,读取时用
Resources
类读取.
另外一种是自己打包然后通过
WWW
加载
AssetBundle
,最后通过AssetBundle中的函数加载与Resources方法类似。
第二种:
这种方法需要把文件放到StreamingAssets目录下,在不同的平台上面 (Windows, Ios ,Android),该目录最终发布的位置不同,所以读取的方法也不同。
Windows | Ios | Android | |
C# | 支持 | 支持 | 不支持 |
C#路径 |
Application.streamingAssetsPath+”/Myfile.txt ” |
Application.streamingAssetsPath+”/Myfile.txt ” |
|
WWW | 支持 | 支持 | 支持 |
WWW路径 |
"file://"+Application.streamingAssetsPath+”/Myfile.txt ” |
"file://"+Application.streamingAssetsPath+”/Myfile.txt ” |
Application.streamingAssetsPath+”/Myfile.txt ” |
WWW是异步加载所以执行加载命令式不能直接执行读取解析操作,
要等待
var www = new
WWW
(filePath);
yield www;
result = www.text;
[转]关于Unity中文件读取 - 大世界的更多相关文章
- 关于Unity中文件读取
存储: 在程序发布后文件的存放有两种,第一种是打包到Uniyt的资源包中(*.unity3D),第二种就是把文件存放在一个特殊的目录如:StreamingAssets,这个目录的东西Unity不会打包 ...
- Perl中文件读取操作
Perl中文件读取操作 http://blog.csdn.net/yangxuan12580/article/details/51506216
- 详解Js中文件读取机制
前言,文件读取是提高应用体验度的必须接口,应用场景中需求很频繁. Js处理文件读取,由于处于安全方面的考虑,在2000年以前,都是以“<input type="file"&g ...
- Java开发中文件读取方式总结
JAVA开发中,免不了要读文件操作,读取文件,首先就需要获取文件的路径. 路径分为绝对路径和相对路径. 在文件系统中,绝对路径都是以盘符开始的,例如C:\abc\1.txt. 什么是相对路径呢?相对路 ...
- 用python对txt中文件读取,然后按顺序标号存入excel中
读取txt文件,然后存入excel中 import xlwt #从txt文件中读取内容,放到ftext1中 f1=open('/Users/XXX/Documents/pythonwork/tenso ...
- c++中文件读取
对于C++编译运行文件,我使用过两个编译器,一个是visual studio 2013,另外一个是devcpp,推荐使用devcpp. vs的特点是界面整洁清晰,但是需要收费,这是微软的,并且在电脑上 ...
- OC中文件读取类(NSFileHandle)介绍和常用使用方法
NSFileHandle 1.NSFileManager类主要对于文件的操作(删除,修改,移动,赋值等等) //判断是否有 tagetPath 文件路径,没有就创建 NSFileManager *fi ...
- python文件夹中文件读取踩坑
Q: 进行数据集图片预处理时,初始命名如下图(Fig1左),发现读取文件时,读取的结构并非如所设想的那样顺序读取 Fig 1 A: pyhton读取文件的时候,按照文件名的ascii码中的顺序进行逐位 ...
- Unity中调用DLL库
DLL -- Dynamic Link Library(动态链接库文件),这里以Window平台为例. Unity支持的两种语言生成的DLL库(C++.C#),这里以C#为例,C++网上可以搜索很详细 ...
随机推荐
- Asp.Net Core 第07局:路由
总目录 前言 本文介绍Asp.Net Core 路由. 环境 1.Visual Studio 2017 2.Asp.Net Core 2.2 开局 第一手:路由概述 1.路由主要用于处理特定的请求. ...
- 启动项目时出现Error: Node Sass does not yet support your current environment: Windows 64-bit with Unsupported runtime (72)
前几天趁假期重新装了一次系统,重新安装各种配置之后再启动项目的时候就报这个错误 第一反应就是去搜这个错误怎么解决,搜来搜去基本上都是让我重新安装node-sass,但我重装node-sass的时候又出 ...
- 【python】 读写文件
#标准输出 sys.stdout.write() sys.stderr.write() #标准输入 while True : try: line = raw_input().rstrip(); exc ...
- python 装饰器 第八步:使用类来作为装饰器参数
#第八步:使用类作为装饰器参数 #装饰器使用的操作类 class Wish: #祈求方法 def before(): print('饭前洗洗手') #还愿方法 def after(): print(' ...
- Cocos2d-x之Action
| 版权声明:本文为博主原创文章,未经博主允许不得转载. 在Cocos2d-x中的Node对象可以有动作,特效和动画等动态特性.因此在Node类中定义了这些动态特性,因此精灵,标签,菜单,地图和粒 ...
- Notepad++使用-如何导出/导入配置文件
复制 : %APPDATA%\Notepad++ 转载于:https://www.cnblogs.com/dmcs95/p/11278982.html
- Mybatis的分支选择和In循环
Mybatis的分支选择: <choose> <when test="patientNo != null and patientNo != ''"> and ...
- mac 支持rz sz
安装 lrzsz brew install lrzsz 配置 iTerm2 安装完成后我们需要在 iTerm2 中使用的话,还需要一些配置 进入到 /usr/local/bin 目录下,下载两个脚本文 ...
- java虚拟机规范(se8)——class文件格式(三)
4.5 字段 字段使用field_info结构来描述. 在同一个class文件中的两个字段不能有相同的名称和描述符. 结构的格式如下: field_info { u2 access_flags; u2 ...
- C语言实现Windows下获取IP和MAC地址。
C语言实现Windows下获取IP和MAC地址. #include <winsock2.h> #include <stdio.h> #include <stdlib.h& ...