以下在这种特殊情况下不起作用,抱怨说不管你给它不是一个字符。Lisp:在将八位字节流转换为格式错误的EUC-JP时,需要帮助从SBCL获得正确的行为
(handler-bind ((sb-int:character-coding-error
#'(lambda (c)
(invoke-restart 'use-value #\?))))
(sb-ext:octets-to-string *euc-jp* :external-format :euc-jp))
其中*euc-jp*
是一个包含EUC-JP编码文本二进制的变量。我也尝试过#\KATAKANA_LETTER_NI
,而不是#\?也只是“”。到目前为止没有任何工作。
任何帮助将不胜感激!
编辑:重现*EUC-JP*
,使用drakma获取http://blogs.yahoo.co.jp/akira_w0325/27287392.html。
请发布一个可重复的片段,即你的* EUC-JP *中有什么? – 2009-01-07 14:40:45
你能格式化你的代码吗?换行符和适当的缩进可以在“(invoke-restart ...”)和处理程序绑定体开头之前插入 – Svante 2009-01-07 14:42:03