星期三, 4月 18, 2012

讓 NetBeans 預設使用 UTF-8 編碼

我在這篇就提過現在NetBeans已經沒有進階選項,無法預設使用UTF-8編碼。

當時的做法是每個Project都去手動改 Tools->Options->Advanced Options->Editing->Java Sources->Default EncodingUTF-8。但這樣編譯時會錯,因此還得改Project的Properties->Build->Compiling->Additional Compiler Options加上 -encoding UTF-8

這樣實在太麻煩了,應該是改 netbeans.conf,Mac在是 /Applications/NetBeans/NetBeans 版本.app/Contents/Resources/NetBeans/etc 下,找到 netbeans_default_options 在最後加上  -J-Dfile.encoding=UTF-8 就可以了。

Update: 自從找到Mac的Java UTF-8檔案編碼解法後,這個方法也適用於Windows,由於有網友問,所以再寫一篇在Windows將Java檔案編碼預設為UTF-8 的方法,設好後重開機,以上的那些都不用再設定。

3 則留言:

鄒文瑩 提到...

您好,我在加了uft8之後,發現我在run專案後的log內,中文字的部份都會變亂碼,例如:口口Q口 這種的亂碼
我是用tomcat跑的 不知您是否有解?

Tseng Teng-Yi 提到...

這位大姐(還是大哥) 沒當過兵吧? 人事時地物要講清楚,不知道什麼OS什麼版本我怎麼處理呢?

幸好我是練過通靈的鳥毅,猜一下應該是在Windows上執行吧?加一個環境變數, 控制台\系統及安全性\系統 選 進階系統設定 -> 環境變數
加一個使用者變數 名稱 JAVA_TOOL_OPTIONS 值 -Dfile.encoding=UTF-8
再把所有相關的shell window都關閉。重起動Tomcat的 Startup.bat 之後就會發現都是用UTF-8做Log,之前的亂碼應該都是Big5,不是真正的亂碼。

鄒文瑩 提到...

你好 抱歉這麼晚才看到
我剛剛已經試過ok了
謝謝你的解答
這問題困擾我好久我google都google不到
還好有你
哈哈
感激不盡