1
일반적으로 File.ReadAllLines
을 사용할 것이라고 알고 있지만 업로드 된 파일로 처리하려고합니다.LINQ로 텍스트 파일 구문 분석
어떻게 든 임시 위치에 넣을 수 있습니까? 아니면 메모리에서 읽을 수 있습니까?
내가 얻을 수있었습니다이 작업일반적으로 File.ReadAllLines
을 사용할 것이라고 알고 있지만 업로드 된 파일로 처리하려고합니다.LINQ로 텍스트 파일 구문 분석
어떻게 든 임시 위치에 넣을 수 있습니까? 아니면 메모리에서 읽을 수 있습니까?
내가 얻을 수있었습니다이 작업가 이것을 string
하는 Stream
, 또는 무엇을? 어느 쪽이든 TextReader
이 필요합니다. 질문은 단순히 StringReader
대 StreamReader
입니다. 당신이 것을이 있으면, 나는 같은 것을 할 것 : 어느 독자와 함께 다음
public static IEnumerable<string> ReadLines(TextReader reader) {
string line;
while((line = reader.ReadLine()) != null) yield return line;
}
을 내가 할 수있는 사용자 중 하나
foreach(var line in ReadLines(reader)) {
// note: non-buffered - i.e. more memory-efficient
}
나 :
string[] lines = ReadLines(reader).ToArray();
// note: buffered - all read into memory at once (less memory efficient)
즉,이 경우 Stream
에서 읽고 있습니다 :
using(var reader = new StreamReader(inputStream)) {
foreach(var line in ReadLines(reader)) {
// do something fun and interesting
}
}
아마도 관련 http://stackoverflow.com/questions/1797576/c-file-upload-read-to-memory-and-use-as-text-file-is-there-a-better-way –
무엇이 있습니까? 파싱의 종류가 필요하며 왜 LINQ에 정착 했습니까? –