2016-12-29 2 views
0

CSV 파서를 작성 중이므로 this 표준을 따르고 싶습니다. 그것은 상태 :행의 끝에 관한 CSV 표준

  1. 각 레코드는 줄 바꿈 (CRLF)

가 어떻게 행 LF 문자의 CR로 끝나는 처리해야으로 구분, 별도의 줄에있는? 나는 그들을 리터럴로 취급하고 들판으로 나가야하며, 행 끝으로 해석해야합니다. 아니면 파일 형식이 잘못 되었나요?

아마도 대부분 유연한 해결책은 두 가지 유형의 라인 끝을 허용하는 것이지만 표준이 말하는 바를 파악하려고합니다.

당신은 어떻게 생각하십니까?

+1

http://stackoverflow.com/q/1552749/5505232이 게시물을 보면 도움이 될 것입니다. –

답변

0

Linux, Windows 및 Mac에서 다른 줄 끝 기호가있을 수 있으므로 확실히 형식이 잘못된 것으로 처리해서는 안됩니다.

모두 지원하는 것이 좋습니다.

또한 적절하게 인용 된 필드의 경우 줄 바꿈을 포함 할 수 있습니다. 그래서 그것도 확인해야합니다. 예를 들어

:

123,"test on 2 
lines",456 

유효한 CSV 행이다.

+0

물론 이러한 유형의 필드를 허용합니다. 그래서이 RFC 표준에서'CRLF'는'CR' 또는'LF' 또는'CRLF'로 읽혀 져야합니까? – PKua

+1

@PKua csv 또는 tsv에 대한 표준은 실제로이 RFC에만 없습니다. 하지만 네, CRLF, CR 및 LF 세 가지를 지원하는 것이 가장 좋습니다. 파일이 레코드 끝 부분에는'CRLF'를 사용하고 여러 줄 필드에는'LF' (또는'CR') 만 사용할 수도 있습니다. –

+0

좋은 지적. 그래서 나는 행에 대한 행 구분자와 인용 된 필드에있는 CR | LF 문자의 변경되지 않은 시퀀스를 가져올 것이라고 생각합니다. 감사. – PKua

관련 문제