【发布时间】:2015-02-03 23:44:20
【问题描述】:
我正在使用以下代码从 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 行,我收到一个异常,因为它太大而无法放入字符串
有没有一种方法可以一次将文本文件直接读入数组中 每行以换行符结束
我已经搜索过了,似乎有一种使用文件的方法。上课,但我可以让它工作。
【问题讨论】:
-
“我已经搜索过了,似乎有一种方法可以使用 file.class 但我也可以做到这一点” - 告诉我们你尝试了什么
-
使用 StreamReader 类
-
我可以做同样的事情从来没有出现过那个错误..还有你怎么会在
Environment.NewLine而不是,上分裂你也用过Debugger -
ako 是对的 - 使用 StreamReader,因为它已经为您抽象了行尾内容(请参阅 chouaib 的答案)。 @MethodMan 在循环 CSV 时,获取所有行然后将行拆分为列是有意义的......除非使用二维数组来存储值
标签: c# arrays file split file.readalllines