-1

我正在使用以下代码将 Assets 文件夹中的文本文件读入字符串并将其拆分为数组

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 行,我收到一个异常,因为它太大而无法放入字符串

有没有办法将文本文件直接读取到数组中,一次一行每行都由换行符终止

我已经搜索过,似乎有一种使用文件的方法。上课,但我可以让它工作。

4

3 回答 3

0

你可以把它读到一个字符串列表中,每一行文本都在列表的一个元素中

List<string> myList= new List<string>();
StreamReader sr = new StreamReader(filepath);

while(!sr.EndOfStream)
{
  myList.Add(sr.ReadLine());
}
于 2015-02-03T23:46:23.313 回答
0

您想要Windows.Storage.FileIO.ReadLinesAsync返回文件行的列表。

List<string> myLines = ReadLinesAsync(myStorageFile);
于 2015-02-03T23:49:56.733 回答
0

采用

System.IO.File.ReadLines(filepath)

https://msdn.microsoft.com/en-us/library/vstudio/system.io.file.readlines(v=vs.100).aspx

于 2015-02-03T23:49:57.693 回答