내 Rails3 앱이 사용자가 업로드 한 CSV 파일을 구문 분석합니다.
예상대로 사용자는 탭으로 구분 된 쉼표로 구분 된 파일을 업로드합니다.
둘 다 지원하고 싶습니다.FasterCSV : 여러 구분 기호
내 코드 :
input = CSV.read(uploaded_io.tempfile, { encoding: "UTF-8", :col_sep => "\t"})
질문 : 방법도 쉼표를 지원하기 위해 변경하는?
FasterCSV의 문서에 col_sep이 The String placed between each field.
으로 표시되어 있으므로 :col_sep => ",\t"
이 작동하지 않습니다.
참고 : 내부에있는 모든 데이터는 정수 또는 식별자이므로 콘텐츠 내에 (구분 기호가 아닌) \t
또는 ,
을 사용할 확률은 0입니다. 따라서 동일한 파일에서 두 개의 서로 다른 구분 기호를 사용하는 것은 내가 명시 적으로 방지하고 싶은 것이 아닙니다.
내가 추가 한 메모를 참조하십시오. –
OK, understand .. 그것은 Solution 2가 훌륭하게 작동해야 함을 의미합니다.:) – Tilo
+1 예, 유효한 해결책입니다. 감사합니다! 수락하기 전에 하루 정도 기다려야 할 것입니다. 어쩌면 누군가가 이것을 잊어 버린 FasterCSV 옵션을 알고 있습니다 .--) –