으로 내가 배열의 형태로 csv 파일에 쓰고 문자열 값을 추가하고있다 - 내 파일을 검사 할 때따옴표
output = "This is a, ruby output"
CSV.open("output/abc.csv", "a+") do |csv|
csv << [output]
end
을 abc.csv
추가 된 행은 따옴표 (")에있다 시작과 필드의 끝. 어떻게 지금까지 ---
파일 출력으로? 그것을
"This is a, ruby output"
을 제거 할 수 나는 tr
또는 slice
을 시도했습니다 csv에 저장하기 전에,하지만 쓰기가 그것을 일으키는 것 같습니다.
이 "유효"CSV (CSV 공식적으로 정의되지 않는다)이며, 잠재적으로 필드 내의 콤마 제대로 출력을 판독하고 어떤 이해되도록 할 필요가 있었다. 필드를 쉼표로 결합하려면 CSV 라이브러리를 건너 뛰고 대신 [output] .join (',')'을 사용하십시오. – Owen
문제점을 재현 할 수 없습니다. 코드는'This is a ruby output'을 따옴표없이 출력합니다. 'force_quotes' 옵션이 true로 설정되면 따옴표를 출력하지만 기본적으로 false로 설정되어 있으므로 코드 조각이 설정하지 않습니다. 문자열에 따옴표 나 쉼표가 있지만 따옴표가없는 경우 따옴표를 출력합니다. 즉, 예제를 다시 확인하십시오. 그렇지 않다면 뭔가 이상한 일이있어서 루비를보고하십시오. – Amadan
@Owen : 손으로 CSV를 작성하는 것은 위험하고 좋지 않습니다. – Amadan