天天看点

使用doxygen生成的帮助文档,中文出现乱码的问题

今天使用doxygen工具生成帮助文档发现中文注释都是乱码。

然后根据网上的要求把

Exper>>Input>>INPUT_ENCODING:(输入文件的编码) UTF-8 改成 GBK 或者 GB2312

Exper>>HTML>>CHM_INDEX_ENCODING:(输出文件的编码) UTF-8 改成 GBK 或者 GB2312

但是改了之后发现连chm文件都没有生成。查看doxygen的输出窗口,发现这样一条报错:

E:/VCProject/LCD_Development_Kit_2008/LCD_Development_Kit/cHtmlEditor.cpp: failed to translate characters from GBK to UTF-8: check

INPUT_ENCODING

使用doxygen生成的帮助文档,中文出现乱码的问题

经过检查,这个文件是直接导入的开源类。原来VC2005会根据文件本身的编码方式来打开文件,也就是说,虽然VC的默认设置中新建一个文件是GB2312,但是如

果这个时候引入一个UTF-8的文件,VC也能识别出来而不会去改变它,除非是VC无法识别的文件编码格式。

在Tools>>Options>>Environment>>Documents 就有一个"Save documents as..."选项....好了,弄明白原因就好办了,言归正传。

解决办法:

修改对应文件编码。

  1.用vc打开报错的文件

  2.File>>Advanced Save Options

    将GB2312 936 改成 GB2312-80 20936 OK

    然后保存文件就可以了,这个时候如果有无法转换的字符就会出现以下提示,

使用doxygen生成的帮助文档,中文出现乱码的问题

    选择No就可以了。

  3.再次执行doxygen run 编译成功。  :)

继续阅读