如何解决:pandoc:...:hGetContents:无效的参数(无效字节序列)

问题描述:

我跑在终端下面的代码在Mac OSX 10.6.8:如何解决:pandoc:...:hGetContents:无效的参数(无效字节序列)

find . -name \*.html -type f -exec pandoc -o {}.md {} \;

它解析一些文件,但给我上了不少这样的错误:

pandoc: ./Teaching/how_16825_make-lesson-book.html: hGetContents: invalid argument (invalid byte sequence)

任何想法如何解决这一问题?

当我尝试解析以拉丁文-1编码的文件时,出现此错误。

在出现此错误时,请在使用pandoc之前尝试将文件保存为utf-8(并修改html代码中的字符集声明)。

正如kadeix所说,这是一个字符编码问题。修改html中的字符集声明对我没有任何帮助。

在vim中来解决这个问题,我用::w ++enc=utf-8

有同样的问题我也看到这是在Pandoc README.html文件:---

Pandoc使用UTF-8字符编码为输入和输出。如果您的本地字符 编码不是UTF-8,则应通过iconv管道输入和输出:

iconv -t utf-8 input.txt | pandoc |的iconv -f UTF-8

当然,你可能需要的iconv instqalled第一(MAC OSX已经拥有它,我beleive)...

http://gnuwin32.sourceforge.net/packages/libiconv.htm牛羚的Win32

https://code.google.com/p/win-iconv/谷歌的Win-语言Iconv