Unity3d读取自定义初始化文件

假设有一个自定义初始化文件Myfile.txt,程序启动时需要读取。


1.请确保Myfile.txt的编码格式为UTF-8,否则会出现中文乱码。

2.将文件放在Assets\StreamingAssets目录下。


3.在各个平台下,Assets\StreamingAssets对应的真实目录的访问方式不一样。具体如下:
	#if UNITY_EDITOR
	string filepath = "file://"+Application.streamingAssetsPath+"/"+"Myfile.txt";

	#elif UNITY_IPHONE
	string filepath = Application.dataPath +"/Raw"+"/Myfile.txt";

	#elif UNITY_ANDROID
	string filepath = "jar:file://" + Application.dataPath + "!/assets/"+"Myfile.txt";
	#endif

4.Windows平台下的.net dll库并不是都能在android、iOS上跨平台运行,因此,应尽量使用unity提供的标准类。比如,这里的读文件就不能使用File、StreamReader类(经测试这两个类在这里无法正常运行),而应该使用unity提供的WWW类。源代码如下:

public void OnClickBtn()
{
	StartCoroutine(fun());

}

public IEnumerator fun()
{

	#if UNITY_EDITOR
	string filepath = "file://"+Application.streamingAssetsPath+"/"+"Myfile.txt";

	#elif UNITY_IPHONE
	string filepath = Application.dataPath +"/Raw"+"/Myfile.txt";

	#elif UNITY_ANDROID
	string filepath = "jar:file://" + Application.dataPath + "!/assets/"+"Myfile.txt";
	#endif

	WWW data = new WWW(filepath);
	yield return data;

	if(string.IsNullOrEmpty(data.error))
	{
	    Text textCpnt = textCtrl.GetComponent<Text>();
	    textCpnt.text = data.text;
	}
	else
	{
	    Text textCpnt = textCtrl.GetComponent<Text>();
	    textCpnt.text = data.error;
	}

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值