我无法找到关于如何在Windows RT中逐行读取文本文件的清晰说明(适用于Windows 8商店)。
假设我有一个文件夹:MyFolder/Notes.txt
我想从Notes.txt读取数据并将其添加到字符串数组中。
我如何从该文件读/写?之前我正在使用StreamReader,但现在它非常令人困惑。开发样本没有那么多帮助。
答案 0 :(得分:7)
我自己找到了答案。谢谢你的帮助。
// READ FILE
public async void ReadFile()
{
// settings
var path = @"MyFolder\MyFile.txt";
var folder = Windows.ApplicationModel.Package.Current.InstalledLocation;
// acquire file
var file = await folder.GetFileAsync(path);
var readFile = await Windows.Storage.FileIO.ReadLinesAsync(file);
foreach (var line in readFile)
{
Debug.WriteLine("" + line.Split(';')[0]);
}
}
MyFile.txt有:
测试1;内容描述;
的Test2;内容描述;
// ReadFile()的输出
测试1
的Test2
答案 1 :(得分:3)
您不必使用File.ReadLines
。如果您愿意,可以尝试这样的实现:
using (StreamReader reader = new StreamReader("notes.txt")) { while (reader.Peek() >= 0) { Console.WriteLine(reader.ReadLine()); } }
答案 2 :(得分:2)
foreach (var line in File.ReadLines("MyFolder/Notes.txt"))
{
...
}
逐行读取文件。这与一次读取整个文件的File.ReadAllLines
不同。
如果您想一次读取所有内容,请使用后者。