10GB의 .dat 파일을 .NET에서 인식 가능한 것으로 구문 분석하려고합니다. 열 구분 기호는 '~'이고 EOL은 '++ EOL ++'입니다. 구분자를 처리하는 방법을 알고 있지만 파일에 실제 줄 바꿈이없는 경우 '++ EOL ++'을 처리하는 쉬운 방법을 찾을 수 없습니다. FileHelpers에서 옵션으로 처리 할 수 있습니까? 아니면 사용자 정의 무언가를 써야합니까?변경 FileHelpers EOL 문자
2
A
답변
0
아니요 FileHelpers는 기본적으로 줄 끝 문자 시퀀스가 비정상 인 파일을 지원하지 않습니다.
파일을 미리 구문 분석하고 EOL 시퀀스를 바꾸는 것이 가장 쉽습니다. 그러나 확장 가능한 라이브러리이기 때문에 자신 만의 DataStorage subclass을 만들 수 있습니다. 당신은 본질적으로
public override object[] ExtractRecords()
{
using (MyStreamReader reader = new MyStreamReader(fileName, base.mEncoding, true, 102400))
{
T[] localArray = this.ReadStream(reader, maxRecords);
reader.Close();
return localArray;
}
}
을 무시하고 다음으로합니다 ((불행히도 sealed
) InternalStreamReader
ReadLine
을 제외하고 EOL 코드
switch (ch)
{
case '\n':
case '\r':
etc...
}
를 포함하는 동일 될 새로운 클래스 MyStreamReader을 만들 것 방법은 FileHelpers 2.9.9에 대한 소스 코드를 참조하고 있습니다. 버전 2.0.0은 System.IO.StreamReader
을 사용하는 것 같습니다. 따라서 InternalStreamReader
대신에 서브 클래스로 만들 수 있습니다.
관련 문제
- 1. Visual Studio에서 EOL 문자 변경
- 2. Linux 및 Windows의 EOL 문자
- 3. 문자열 내에서 정규식 일치하는 EOL 문자
- 4. 이메일과 FTP 문자 메시지의 크기 차이 - EOL 문자?
- 5. FileHelpers : 결과로 검색
- 6. FileHelpers 파일 액세스
- 7. FileHelpers CSV timespan
- 8. FileHelpers 오류 및 RecordString
- 9. FileHelpers Take Limit?
- 10. FileHelpers 소스 코드
- 11. F # CSV FileHelpers
- 12. MQ EOL 데이터 변환
- 13. 파이썬 오류 파일 EOL
- 14. EOL 이전의 프로세스 스트림
- 15. PHP 문자 변경
- 16. 지금까지 문자 필드 변경
- 17. 기본 문자 집합 변경
- 18. 문자 인코딩 변경
- 19. MySQL에서 문자 인코딩 변경?
- 20. HTML에서 비밀번호 변경 문자
- 21. 변경 문자열 문자 X
- 22. 텍스트 문자 변경
- 23. 문자 인코딩 변경
- 24. 범위의 문자 서식 변경
- 25. Filehelpers Excel to Oracle db
- 26. FileHelpers 매핑 클래스의 배열 사용
- 27. FileHelpers - N 번째 열만 읽기
- 28. filehelpers 오류가있는 csv 파일 읽기
- 29. FileHelpers : CsvEngine.DataTableToCsv가 잘못된 CSV를 만듭니다.
- 30. 파이썬 정규식 마지막 occurance EOL
+1 Goo d 문제는 소스 코드에서 문제를 해결하는 데 도움이 될만한 내용이없는 것처럼 보입니다 (아마도 무언가를 놓친 것 같습니다). 신속하고 더러운 솔루션으로 문자열 만 대체하면됩니다. –
이것은 항상 내 마음 속에 있었지만, 내가 지어 졌던 것을 놓치지 않고 있는지 확인하고 싶었습니다. – Scott