我在Mac OSX 10.6.8上的终端中运行以下代码:
find . -name \*.html -type f -exec pandoc -o {}.md {} \;
它会解析一些文档,但在很多文档中给出了这个错误:
pandoc: ./Teaching/how_16825_make-lesson-book.html: hGetContents: invalid argument (invalid byte sequence)
知道如何解决这个问题吗?
答案 0 :(得分:3)
遇到同样的问题我也看到这是在Pandoc README.html文件中:---
Pandoc对输入和输出使用UTF-8字符编码。如果你的本地人物 编码不是UTF-8,你应该通过iconv管道输入和输出:
iconv -t utf-8 input.txt | pandoc | iconv -f utf-8
当然你可能需要首先安装iconv(Mac Osx已经拥有它我相信)...
http://gnuwin32.sourceforge.net/packages/libiconv.htm Gnu Win32
https://code.google.com/p/win-iconv/ Google Win-Iconv
答案 1 :(得分:2)
正如kadeix所说,这是一个字符编码问题。修改html中的charset声明对我没有任何作用。
在vim解决此问题时,我使用了::w ++enc=utf-8
答案 2 :(得分:0)
当我尝试解析用latin-1编码的文件时,我收到此错误。
在出现此错误时,请在使用pandoc之前尝试在utf-8中保存文件(并修改html代码中的charset声明)。