当我将游戏构建为.apk文件时,我在尝试阅读存储在Android手机StreamingAsset文件夹中的文本文件时遇到了很多麻烦。
我知道对于Android,你必须使用不同的路径来使用
来访问文件"jar:file://" + Application.dataPath + "!/assets" + fileName;
并将其存储到WWW类中。我尝试了很多方法,但似乎没有什么对我有用,因为我现在完全迷失了。我的代码如下所示:
void Awake(){
string filePath = "jar:file://" + Application.dataPath + "!/assets" + fileName;
// Reads our text file and stores it in the array
string[][] Level = readFile (filePath);
}
// Reads our level text file and stores the information in a jagged array, then returns that array
string[][] readFile(string file){
WWW loadFile = new WWW (file);
while (!loadFile.isDone) {}
string text = System.IO.File.ReadAllText(loadFile.text);
string[] lines = Regex.Split(text, "\r\n");
int rows = lines.Length;
string[][] levelBase = new string[rows][];
for (int i = 0; i < lines.Length; i++) {
string[] stringsOfLine = Regex.Split(lines[i], " ");
levelBase[i] = stringsOfLine;
}
return levelBase;
}
答案 0 :(得分:0)
您可以使用streamreader:
List<string> lines = new List<string>();
using (StreamReader reader = new StreamReader("file.txt"))
{
string line;
while ((line = reader.ReadLine()) != null)
{
lines.Add(line);
}
}
答案 1 :(得分:-1)
第string text = System.IO.File.ReadAllText(loadFile.text);
行错误:
loadFile.text
已包含您尝试使用System.IO.File.ReadAllText
System.IO.File.ReadAllText
方法从Android上的StreamingAssets访问文件。