从行到列表读取txt文件?

从行到列表读取txt文件?

问题描述:

需要一些函数,它会返回带有txt文件行的List(例如从10行到25行)。 任何解决方案?我所有的尝试都遇到了失败。从行到列表读取txt文件?

+3

后你的代码所以我们可以看到你在做什么。 – Stephen 2013-04-23 08:49:34

// Retrieve 10 lines from Somefile.txt, starting from line 1 
string filePath = "C:\\Somefile.txt"; 
int startLine = 1; 
int lineCount = 10; 
var fileLines = System.IO.File.ReadAllLines(filePath) 
       .Skip((startLine-1)) 
       .Take(lineCount); 

您可以使用它列举了文件中的行LINQ和File.ReadLines(在内部它使用StreamReader):

List<string> lines = File.ReadLines(path).ToList(); 

你可以这样做:

List<string> fileLines = new List<string>(); 

using (var reader = new StreamReader(fileName)) 
{ 
    string line; 
    while ((line = r.ReadLine()) != null) 
    { 
     fileLines.Add(line); 
    } 
} 

检查了这一点。 .. http://www.aspdotnet-suresh.com/2010/12/how-to-read-and-write-text-file-using.html

使用流else或强生成器

List<string> lines = File.ReadLines().ToList(); 
for(int i = 0; i < lines.Count; i++){ 
if(i >= startline && i <= endline) LinesFromStartToEnd.Add(lines[i]);// same string list 
} 

如果文件不是太大,你可以使用LINQ做到这一点:

int start = 10; 
int end = 25;  
List<string> lines = File.ReadLines(path).Skip(start - 1).Take(end - start + 1).ToList(); 
+0

文件有100万行) – oczxn 2013-04-23 09:37:24