C# 读取文件并将内容放入数组中
我试图简单地读取一个文件的全部内容并将其放入一个数组中(元素将是行,所以数组[2]将获得第三行,以此类推) 我试过:C# 读取文件并将内容放入数组中,c#,.net,C#,.net,我试图简单地读取一个文件的全部内容并将其放入一个数组中(元素将是行,所以数组[2]将获得第三行,以此类推) 我试过: originalFileContentArray = new string[] { fileReader.ReadToEnd() }; 我认为这是一个好主意,因为我发现关于这个的所有东西都是大循环,逐行读取文件并将其放入数组中 我的想法的问题是,行不会自动分开,因此数组只包含一个大元素,其中包含整个内容 你知道如何将内容正确地分割成多个元素吗 谢谢 使用String.Split
originalFileContentArray = new string[] { fileReader.ReadToEnd() };
我认为这是一个好主意,因为我发现关于这个的所有东西都是大循环,逐行读取文件并将其放入数组中
我的想法的问题是,行不会自动分开,因此数组只包含一个大元素,其中包含整个内容
你知道如何将内容正确地分割成多个元素吗
谢谢 使用
String.Split
或文件.ReadAllLines()
使用String.Split
或文件.ReadAllLines()
使用以下替代方法:
改用:
使用使用我会像这样从文本文件创建一个数组(每行都是一个元素): 然后像这样滚动:
foreach (string line in lines) { // manipulate data here }
让我知道如果这有帮助的话,我会从这样的文本文件创建一个数组(每行都是一个元素): 然后像这样滚动:
foreach (string line in lines) { // manipulate data here }
让我知道这是否有帮助如果你真的需要把所有的行都存储在内存中以便你可以操作它们,那么这就是方法。但如果您只需要逐行处理文件,请使用:
如果您真的需要将所有行都存储在内存中,以便可以对它们进行操作,那么这是一条可行的道路。但如果您只需要逐行处理文件,请使用:
这将给出第一个字符为
\n
的行,第一行除外。文件的最后一行只包含一个\n
字符。您可以通过在\r\n
上拆分来实现这一点,但使用文件。ReadAllLines
是一种更干净的解决方案。这将使除第一行之外的第一行字符为\n
。文件的最后一行只包含一个\n
字符。您可以通过在\r\n
上拆分来实现这一点,但是使用文件。ReadAllLines
是一个更干净的解决方案。与@BrokenGlass的答案相比,您添加的只是一个创建文件路径的非常糟糕的方法的示例。与@BrokenGlass的答案相比,您添加的只是一个创建文件路径的非常糟糕的方法的示例。
string[] lines = File.ReadAllLines(@"c:\users\" + Environment.UserName + @"\desktop\data.txt");
foreach (string line in lines) { // manipulate data here }
foreach (string line in File.ReadLines(filename))
{
// process this line
}