2007/07/12

SBCL external-format

SBCL の external-format のデフォルト値は sb-impl::*default-external-format* と sb-alien::*default-c-string-external-format* に設定されています。
Linux の場合は :utf-8 に、Windows の場合は :cp932 に設定するといいでしょう。
日本語のファイル名等もあつかえます。


; SLIME 2007-05-24
CL-USER> sb-impl::*default-external-format*
:UTF-8
CL-USER> sb-alien::*default-c-string-external-format*
:UTF-8
CL-USER> (directory "/tmp/未タイトルのフォルダ/*")
(#P"/tmp/未タイトルのフォルダ/新しいファイル" #P"/tmp/未タイトルのフォルダ/未タイトルのフォルダ/")
CL-USER> (with-open-file (in (car *) :external-format :cp932)
(print (read-line in)))

"あいうえお"
"あいうえお"

Windows では次のように ~/.sbclrc の中で設定しています。

(setf sb-impl::*default-external-format* :cp932)
(setf sb-alien::*default-c-string-external-format* :cp932)

0 件のコメント: