我使用以下代码将资产文件夹中的文本文件读入字符串并将其拆分为数组
string filepath = @"Assets\DATA.csv";
StorageFolder folder = Windows.ApplicationModel.Package.Current.InstalledLocation;
StorageFile file = await folder.GetFileAsync(filepath); // error here
var Lines = await Windows.Storage.FileIO.ReadTextAsync(file);
string[] lines2 = Lines.Split(new string[] { Environment.NewLine }, StringSplitOptions.None);
这个工作正常,但是文本文件现在超过500行,我得到一个例外,因为它太大而不适合字符串
有没有办法一次一行地将文本文件直接读入数组 每一行都以换行符
结束我搜索过,似乎有办法使用文件。但是我可以让它上班。
答案 0 :(得分:0)
你可以把它读到一个字符串列表,列表的一个元素中文本的每一行
List<string> myList= new List<string>();
StreamReader sr = new StreamReader(filepath);
while(!sr.EndOfStream)
{
myList.Add(sr.ReadLine());
}
答案 1 :(得分:0)
您希望Windows.Storage.FileIO.ReadLinesAsync
返回文件行的列表。
List<string> myLines = ReadLinesAsync(myStorageFile);
答案 2 :(得分:0)
使用
System.IO.File.ReadLines(filepath)
https://msdn.microsoft.com/en-us/library/vstudio/system.io.file.readlines(v=vs.100).aspx