플랫 텍스트 파일에서 엔티티를 읽고 쓰고 싶습니다. 엄청난 양의 데이터로 인해, 직렬화/직렬화 복원은 적절한 해결책이 아닙니다.텍스트 파일 DataProvider in .NET
텍스트 파일 데이터 소스 (예 : csv, ...)를 사용할 수있는 데이터 제공 업체가 있습니까?
플랫 텍스트 파일에서 엔티티를 읽고 쓰고 싶습니다. 엄청난 양의 데이터로 인해, 직렬화/직렬화 복원은 적절한 해결책이 아닙니다.텍스트 파일 DataProvider in .NET
텍스트 파일 데이터 소스 (예 : csv, ...)를 사용할 수있는 데이터 제공 업체가 있습니까?
당신은 제트 엔진과 결합 인 OleDB를 사용할 수 있습니다
using (var connection = new OleDbConnection(
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\"" + directoryPath
+ "\";Extended Properties='text;HDR=Yes;FMT=Delimited(,)';"))
using (var command = new OleDbCommand(
"SELECT * FROM [" + fileName + "]", connection))
{
connection.Open();
using (var reader = command.ExecuteReader())
while (reader.Read())
...
}
항상 대상 파일에 대한 LINQ 공급자를 조사 할 수 있지만 LINQ to XML을 사용할 수 있습니다. 빠른 검색은 LINQ to CSV 및 LINQ to Text과 같은 다른 정보를 생성합니다.
그러나 내가 찾는 지원과 관련하여 제공하는 지원에 대해서는 알지 못하므로 직접 검토하고 대답하지 않아야합니다.
아니지만 텍스트 파일의 DataProvider를 ... 체크 아웃 protobuf - 소모 직렬화 적은 시간 + 공간을 확보하기 위해 특별히 작성된 것입니다 http://code.google.com/p/protobuf-net/
...
저자에 유래에 여기 - Marc Gravell
당신이 SQLite는을 사용하여 생각 해 봤나? 그것은 당신이 원하는대로하고 많은 시나리오에서 꽤 빠릅니다.