繼發現VS2015有許功蓋BIG5相容問題、寫了批次轉檔潛盾機,接到網友們陸續回饋,我學會好幾種不同做法,也知道了幾個批次轉檔軟體,在此感謝。

昨天ChrisTorng再分享了一個存檔時自動轉UTF8的VS套件,粗略評估,它主要功能在於存檔時強制存成UTF8編碼,若專案存在大量BIG5編碼程式檔,得逐一開啟存檔,仍是苦工。但順著套件的日文介紹,我找到一篇微軟Visual Studio日本支援團隊的MSDN部落格文章,雖然日文看不懂,但我看到幾個關鍵字:Shift-JIS(日文的ANSI編碼,相當於我們的BIG5)、csproj、PropertyGroup、CodePage、932(Shift-JIS的CodePage)… 秒懂,密技一枚取得!

原來.csproj中有個隱藏參數CodePage,若Visual Studio在開啟專案時因BIG5編碼不相容出錯,可使用文字編輯器打開.csproj,如下圖加入<CodePage>950</CodePage>指定使用BIG5編碼解析ANSI編碼程式檔:

薑!薑!薑!薑~ 程式碼不用改編碼,VS2015 BIG5不相容問題自動消失!

就長遠來看,所有程式檔統一改存UTF8才是王道。但如果想快速解決問題,這招很好用。

PS:這個方法應可套用於所有ANSI編碼程式檔,例如:若為簡體中文GB2312/GBK,CodePage改指定936即可。


Comments

# by 舒亚兰

用VS2013打开生成不报错,用VS2015打开生成报错,几百个错误BC30035,全部aspx后缀名的都要报几百个错误,不知道什么原因

# by Jeffrey

to 舒亚兰, 聽起來很像aspx檔案的編碼被設成BIG5/GB2312,建議改成UTF-8試試。

# by 轉生春捲

謝謝你暗黑大大

Post a comment