[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

11.33 text.csv - CSVテーブル

Module: text.csv

RFC4180に定義されたフォーマットを含む、 CSV (カンマ区切りの値) の表をパーズ/生成するための手続きを提供します。 区切り文字やクオート文字をカスタマイズすることで、CVSに似たフォーマットを 広くカバーすることができます。

CSV の表は、改行で区切られた record の連続で構成されます。 それぞれのレコードは、区切り文字(デフォルトではカンマ)で区切られた 複数の field を含みます。フィールドは、クォートされている (二重引用符で囲まれている)場合は、カンマや改行を含むことができます。 クォートされたフィールドに二重引用符を含めるには、2つの連続する 二重引用符を使います。通常、フィールドの前後の空白は無視されます。

現時点では、以下の2つの低レベルな手続きが提供されています。 フィールドにラベル付けをしたり、自動的に変換するなどの より高レベルな機能の提供を計画しています。

Function: make-csv-reader separator &optional (quote-char #\")

入力ポートを唯一の引数として取る手続きを返します。 手続きが呼ばれると、ポートからレコードを1つ読み込み、フィールドの リストを返します。入力ポートが EOF に達すると、EOF を返します。

Function: make-csv-writer separator &optional newline (quote-char #\")

出力ポートとフィールドのリストの2つの引数を取る手続きを返します。 手続きが呼ばれると、separator で区切られたフィールドを 正しくエスケープして出力ポートに出力します。レコードの区切り文字列を newline で指定することもできます。例えば、ファイルが Windows の プログラムでも読めるように、"\r\n" を渡すことができます。


[ < ] [ > ]   [ << ] [ Up ] [ >> ]

This document was generated by Shiro Kawai on November, 22 2009 using texi2html 1.78.