u3d创建文本文件,以及文件的读取

2015年03月20日 13:03 0 点赞 0 评论 更新于 2025-11-21 17:51

在Unity3D(U3D)开发中,经常会涉及到本地文件的创建与读取操作。下面将详细介绍如何在U3D中创建文本文件,并对其进行读取。

1. 创建本地文本文件

在U3D里创建本地文件,可借助FileInfo类来实现。具体步骤如下:

  • 实例化FileInfo对象时,在其构造方法中传入文件的保存路径。
  • 通过FileInfo对象调用CreateText方法,即可在本地创建一个文本文件。若文件已存在,可使用AppendText方法打开该文件,再利用WriteLine方法将字符串写入文本。

以下是创建文件并写入内容的代码示例:

/**将文本写入文件*/
void CreateFile(string path, string name, string info)
{
StreamWriter sw;
// 实例化FileInfo对象,传入文件保存路径
FileInfo t = new FileInfo(path + "/" + name);
if (!t.Exists)
{
// 文件不存在,创建新文件
sw = t.CreateText();
}
else
{
// 文件已存在,追加内容
sw = t.AppendText();
}
// 写入内容
sw.WriteLine(info);
// 关闭流
sw.Close();
// 释放资源
sw.Dispose();
}

2. 读取本地文本文件

要读取本地文本文件,可使用StreamReader类。通过File.OpenText方法打开文件,然后使用ReadLine方法逐行读取文件内容。

以下是读取文件内容的代码示例:

/**文件的读取*/
ArrayList LoadFile(string path, string name)
{
StreamReader sr = null;
try
{
// 打开文件
sr = File.OpenText(path + "/" + name);
}
catch (Exception e)
{
// 捕获异常,若文件不存在则输出错误信息
Debug.Log("没有文件" + e.Message);
return null;
}
string line;
ArrayList arrList = new ArrayList();
// 逐行读取文件内容
while ((line = sr.ReadLine()) != null)
{
arrList.Add(line);
}
// 关闭流
sr.Close();
// 释放资源
sr.Dispose();
return arrList;
}

3. 调用示例

Start方法中调用上述CreateFileLoadFile方法,演示文件的创建和读取过程:

void Start()
{
// 创建文件并写入内容
CreateFile(Application.dataPath, "FileName", "TestInfo0");
CreateFile(Application.dataPath, "FileName", "TestInfo1");
CreateFile(Application.dataPath, "FileName", "TestInfo2");
// 读取文件内容
ArrayList arrlist = LoadFile(Application.dataPath, "FileName");
if (arrlist != null)
{
foreach (string str in arrlist)
{
Debug.Log("--------------------" + str);
}
}
}

通过以上步骤和代码示例,你可以在U3D中实现文本文件的创建和读取操作。在实际开发中,要注意文件路径的正确性,以及流的关闭和资源的释放,避免出现内存泄漏等问题。

作者信息

menghao

menghao

共发布了 3994 篇文章