2010-03-25 4 views
0

텍스트 파일이 있습니다. 나는 그 파일을 읽고 싶다. 하지만 그 라인이 6으로 시작한다면 그 파일을 읽지 않으면 그 라인을 떠나 다음 라인으로갑니다. 줄이 6으로 시작하면 6 행 15에서 45 행 62 행을 읽으 려합니다. C# .NET에서이 코드를 구현하고 싶습니다. 그 코드를 작성하는 방법? 아무도 도와 줄 수 있어요.C# .Net을 사용하여 텍스트 파일을 읽는 방법

답변

3
public IEnumerable<string> ReadLines(string fileName) 
{ 
    string line; 
    using (var rdr = new StreamReader(fileName)) 
     while ((line = rdr.ReadLine()) != null) 
      yield return line; 
} 

ReadLines("yourfile.txt") 
    .Where(l => l.StartsWith("6")) 
    .Select(l => new {Part1 = l.SubString(6, 9), Part2 = l.SubString(45, 17)}); 
+0

굉장한 솔루션. –

+0

예, 그렇지만 OP가 이해하기 어려울 수 있습니다. –

+2

ReadLines 메서드 대신 File.ReadAllLines을 사용하지 않는 이유는 무엇입니까? –

0

& 각 줄의 내용을 확인하려면 System.IO.TextReader 클래스 & 문자열 함수를 사용해야합니다.

MSDN에는 C#에서 StreamReader를 사용하는 this 문서의 좋은 예가 있습니다.

2

using System.IO

를 사용하여 마이크로 소프트의 StreamReader. Example here.되었지만 스트림 클래스 바이트 입출력 용 설계되는 반면, 픽 (...)은,

에서는 StreamReader가 특정 인코딩 문자 입력 설계 등 앞서 보이는 문자위한 Read(..) method를 사용 . 표준 텍스트 파일에서 정보를 읽으려면 StreamReader를 사용하십시오.

관련 문제