今天使用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

經過檢查,這個檔案是直接導入的開源類。原來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
然後儲存檔案就可以了,這個時候如果有無法轉換的字元就會出現以下提示,
選擇No就可以了。
3.再次執行doxygen run 編譯成功。 :)