http://blog.xuite.net/akuox/caffeine/32265749
[ java -Dfile.encoding=UTF8 ]
java 預設在處理文字檔案的寫入時,
會以 os 的預設編碼當作寫入的編碼規則,
這個問題常會發生在 windows 英文的作業系統要寫入中文的時候發生,
解法1:
如果是用 java 執行的 jar ,
java -Dfile.encoding=UTF8 -jar e:\bin\ExportToFile.jar
解法2:
加入環境變數 JAVA_OPTS,
windows 環境:
JAVA_OPTS=-Dfile.encoding=UTF8;%JAVA_OPTS%
linux 環境:
$> export JAVA_OPTS=-Dfile.encoding=UTF8:$JAVA_OPTS
解法3:
在程式裡面設定:
取得目前系統檔案編碼屬性 String defaultEncodingName = System.getProperty( "file.encoding" );
設定系統檔案編碼屬性 System.setProperty("file.encoding", "UTF-8");
我自己是設定 -Dfile.encoding=Big5
沒有留言:
張貼留言