eclipse解決在windows下打開ubuntu源碼亂碼問題

在android開發當中,由於開發環境的問題(我們經常使用的是windows、ubuntu、mac os),各種操作系統下創建的工程源碼在別的操作系統中打開就會經常發現中文亂碼的問題。比如在windows下打開ubuntu下創建的android應用工程,就會發現可能以前寫的中文註釋亂碼了,而且還有可能伴隨着一大推莫名其妙的報錯。

出現這個問題的原因很簡單,就是各個操作系統的編碼方式不同。windows下的編碼方式爲gbk,而linux環境下的編碼方式爲UTF-8;另外windows和linux下換行符也不同,windows下的換行符爲"\r\n",而linux下爲"\r"就可以了,這就是爲什麼我們在windows下打開linux文件會發現文本不換行了。

解決這個問題也不難,在linux下解決這個問題用個iconv命令把文件編碼轉爲UTF-8就可以了,可參考(http://blog.csdn.net/imyang2007/article/details/7448177)。下面要介紹是在windows環境下解決這個問題的方法:利用eclipse工具。

爲了使代碼有更好的兼容性,最好我們把字符用法UTF-8編碼,這個也是windows遭人詬病的地方,它自己實現的GBK編碼只能在兼容自己的操作系統,沒考慮到現在的國際標準UTF-8,關於字符編碼(unicode,UTF-8等詳細資料可以參考http://blog.csdn.net/imyang2007/article/details/7470708)。eclipse的默認編碼是更系統編碼一樣的,這裏要把eclipse默認編碼設置成UTF-8,這樣就可以徹底解決windows文件與linux文件的兼容性問題了。

  1. windows->Preferences...打開"首選項"對話框,左側導航樹,導航到 general->Workspace,右側Text file encoding,選擇Other,改變爲UTF-8,以後新建立工程其屬性對話框中的Text file encoding即爲UTF-8。
  2. windows->Preferences...打開"首選項"對話框,左側導航樹,導航到 general->Content Types,右側Context Types樹,點開Text,選擇Java Source File,在下面的Default encoding輸入框中輸入UTF-8,點Update,則設置Java文件編碼爲UTF-8。其他java應用開發相關的文件如:properties、XML等已經由Eclipse缺省指定,分別爲ISO8859-1,UTF-8,如開發中確需改變編碼格式則可以在此指定。

經過上述兩步,新建java文件即爲UTF-8編碼,Eclipse編譯、運行、調試都沒問題,但是做RCP應用的Product輸出時、或者插件輸出時,則總是出錯,要麼不能編譯通過(輸出時要重新compile)、要麼輸出的插件運行時中文顯示亂碼。此時需要再RCP應用、或插件Plugin工程的build.properties中增加一行,javacDefaultEncoding.. = UTF-8。讓輸出時編譯知道java源文件時UTF-8編碼。這個設置需要保證所有的java源文件時UTF-8編碼格式,如果不全是,可以參考Eclipse幫中(Plug-in Development Environment Guide > Reference > Feature and Plug-in Build configuration),建議全部java源文件是UTF-8編碼。

如果插件開發、RCP應用開發原來基於其他編碼,如GB18030,想轉換爲UTF-8,則首先,做以上工作;然後通過查找編碼轉換工具,如基於 iconv的批量轉換工具,將原編碼轉換爲UTF-8編碼,注意只轉換java源文件,其他類型文件可能已經是比較合適的編碼了;將原工程屬性中的 Text file encoding,從原編碼改爲UTF-8即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章