- ベストアンサー
CSVの仕様について
改行コードとカンマの取り扱い。 最近の一般的なWINDOWSアプリケーションでCSVの取り扱いは (1) 行区切りの改行コードはCRLFで行います。 データ内の改行コードは、LFで行う。 (2) カンマ付きのデータは『"』クォーテーションで囲む その際、元のデータ内の『"』は『""』でエスケープ。 (1)(2)の仕様でよいのでしょうか? 自身でCSV生成とパースを書きたいのですが、RFCは参考にしますが、 実際のポュラーな仕様に合わせたいので調べています。 ご意見でも構いません宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
(1)の「データ内の改行コードは、LFで行う。」はどちらかといえば (2)に属していて「カンマおよび改行コード(LF or CRLFは問わない)が含まれているデータは ダブルクォーテーションでくくる」ではないでしょうか。
その他の回答 (2)
- MARU4812
- ベストアンサー率43% (196/452)
一般に…というのであれば、 CSV ファイルはテキストエディタの仕様に合わせるべきで、 Windows 環境ならデータ内であっても CRLF という考え方 を支持します。 http://codezine.jp/article/detail/2364 (Excel の仕様はデフォルトで数値・日付の変換を 行なうので技術者には嫌う人も多いです。データ内に LF と CRLF が混在していた場合でも、正常に読める ようですが、セル入力での改行は LF しかないのでは? 編集まで視野に入れるなら Excel では CSV の仕様 に合っていない(力不足)です。)
お礼
>EXEL~セル入力での改行は LF しかないのでは? そのように思えます。 これがネックになるので、LFコードはそのまま扱えるようにすることにします。 回答ありがとうございました。
- aton
- ベストアンサー率47% (160/334)
直接の回答ではありませんが…。 なんにせよExcelが基準になっていると思うので,気になる仕様についてはExcelに読み書きさせてみるといいのではないでしょうか?
お礼
回答ありがとうございます。 やはり、エクセルは基準から外せませんね。
お礼
回答ありがとうございます。 LFのデータが存在する以上それに沿ってつくる方がよいですね。