話によると、MS EXCELでCSVを作成すると、セルに改行を含めたりするらしい。
セルに改行がはいっていても fare-csvを使えば簡単に処理してくれると聞いたので試してみたらエラーがでてしまった。
fare-csv:read-csv-fileを使う前に、文字コードをSJISにあわせておけばエラーがでなくなった。
;;;; load by quicklisp ;(ql:quickload :cl-ppcre) ;;; 使ってなかったorz (ql:quickload :fare-csv) ;;;; external format for csv file of MS EXCEL/WINDOWS (setf ccl:*default-external-format* (ccl:make-external-format :character-encoding :cp932 :line-termination :dos)) (defvar *table* (fare-csv:read-csv-file "foobar.csv"))
CSVの項目はリストのリストで返る。
mapcanでレコードがひとつずつ取得できる。そのレコードはリストになっている。