一个解决unity3d 多平台下完美本地文本文件读取的方法

来源:互联网 发布:乐语电话软件 编辑:程序博客网 时间:2024/05/15 23:51

http://blog.csdn.net/hpsoft/article/details/8227255

unity3d可以把游戏发布在很多游戏平台下,但unity3d在不同的运行平台下,本地文件路径是不一样的,这样给我们用给应用配置的本地文本文件的读取带来不小的麻烦,要要把不同的平台来写出不同的路径,特别是android 平台下就更麻烦了。

  在网上转了很久,终于看到老外有个比较完美的解决办法,不敢独美,分享一下,其实很简单,就是写脚本的时候声明一个公共 TextAsset 类型变量;然后在可视化里把你要的文本文件拖进去就行了,呵呵很简单又很完美,完全不用考虑什么路径问题了


示例代码,随手写的,没测试过,但原理已经很清楚了

方法一

using UnityEngine;
using System.Collections;
public class example : MonoBehaviour {
  public TextAsset asset;
  void Start() {
    print(asset.text);
  }
}

然后把文本文件拖进 public TextAsset asset;里 调用就asset.text就可以了。


方法二

using UnityEngine;
using System.Collections;
public class example : MonoBehaviour {
  void Start() {

    TextAsset asset = (TextAsset) Resources.Load("filename", typeof(TextAsset));
    print(asset.text);
  }
}

然后把文本文件放到Resources目录里,调用Resources.Load() 方法就可以了,这里的文件名不需要写后缀名。

注意以上该去中的文本文件的后缀名必需是 .txt .html .htm .xml


0 0
原创粉丝点击