一.静态内部读取txt文本
这是最简单的方式,建立TextAsset,直接把文本文件拖上,就可以用了,具体步骤如下
(1)首先把要读取的txt文件导入Assets下(如图中的Data.txt)
(2)建立C#脚本,代码如下
using UnityEngine;
using System.Collections;
public class LoadTxt : MonoBehaviour {
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
}
注意:C#脚本中的类名必须与文件名保持一致,改文件名的同时也要进入脚本相应改掉类名
(3)把脚本拖给一个游戏对象,并把文本文件托至Inspector面板中该脚本的Txt File一栏
(4)运行(成功输出文档内容“123456789”)
注意:txt文本的编码格式要改为UTF-8格式,否则读不出来,虽然不会报错
二.动态内部读取txt文本
(1)在
Assets下新建一个
Resources文件夹,把
要读取的txt文件导入
Resources
下(如图中的Data.txt)
(2)建立C#脚本,代码如下
using UnityEngine;
using System.Collections;
public class LoadTxt : MonoBehaviour {
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
}
(3)把脚本拖给一个游戏对象,
运行(成功输出文档内容“987654321”)
三.外部读取txt文本
实际运用中上述的两种方法使用的并不多,大多都是用的外部读取,具体步骤如下:
(1)
建立C#脚本,代码如下
using UnityEngine;
using System.Collections;
using System.IO; //需要导入System.IO,主要使用它的File类
public class LoadTxt : MonoBehaviour {
// Use this for initialization
void Start () {
}
// Update is called once per frame
void Update () {
}
}
(2)运行,
(成功输出文档内容“abcdefghi”)
注:关于路径又有绝对路径和相对路径,绝对路径就不解释了,相对路径要注意下,如果用Application.dataPath除了要注意移动平台之外,特别要注意Application.dataPath在编辑环境下和在生成exe之后是不一样的,编辑状态下,返回的是Asset位置,生成后Assets不再存在,返回位置是_Data文件夹