在Unity3D中,我想从文本文件中加载位置数据。 以下是文本文件的示例。
data_01.txt
1; -5; -10
data_ 02.txt
2; 2; 5
data_03.txt
3; 2; 4
...............
所有文件都是1行。
我想将这些数据输入到对象中。
我想每1秒加载30个文本文件中的文本文件。 有代码保存位置数据。
public void Start()
{
try
{
System.IO.StreamWriter saveFile = new System.IO.StreamWriter("savefile.txt", false);
Transform[] transforms = GameObject.FindObjectsOfType(typeof(Transform)) as Transform[];
foreach (Transform t in transforms)
{
this.saveFile.WriteLine(t.position);
}
}
catch (System.Exception ex)
{
Debug.Log(ex.Message);
}
finally
{
saveFile.Close();
}
}
如何在Unity中连续实现代码加载位置数据?
答案 0 :(得分:1)
您可以编写一些使用System.IO的代码并使用它来读取文本文件。然后你可以用正则表达式以分号分割字符串。这是一些示例代码。代码写在我的iPhone上,所以它可能不完美。
using System.io
using System.Regex
using unityengine;
StreamReader reader = new StreamReader("file name");
String read = reader.Read();
String[] points = Regex.Split(read,";");
//now you can use the points array to visualize your data
你可能需要把它放在for循环中以获取所有文件,但这应该有效。还告诉我代码中的任何错误,我会尝试修复它们。