原作者地址:
http://www.blogjava.net/lifesting/archive/2008/04/11/192250.html, 感謝此作者!
問題描述:
我們項目開發都統一採用utf-8格式編碼,但昨天研發部的一個產品要整合進來,他們是用gbk編碼的,如果強行將檔案設定成utf-8肯定不行,中文全亂了。在jsp裡面用 ctrl+H 進行搜尋替換也不行,中文也是顯示不出來的。
老的解決辦法:
將專案檔都設為utf-8編碼,然後一個一個的檔案用Ultraedit開啟,粘貼到eclipse裡面,在儲存。這種辦法最笨,最累,但沒有發現其它好辦法的時候,也只能幹體力活了。畢竟,結果才是最重要的。
發現此外掛程式過程:
本來給研發的人說,我們要改變編碼,代價太大,而且我們項目最終是要發布在aix機器上,所以還是請你們想辦法和我們保持一致,畢竟研發是協助我們項目實施的。後來和經理qq上交流了一下,領導的意思是,我們最好提供解決方案,也不要讓別人太痛苦(領導看問題還是更全面的, ^_^)。 突然一想,以前都是用baidu在搜尋,這次用google,找資料的命中率可能更高一點。結果運氣好,一次就發現解決辦法了。 再次感謝此作者。
小插曲:我看完文章就想回郵件,說請參考此文章。旁邊同事立刻提醒,先test一下,要不然發過去,又搞不定,那就不太好意思了。(這個情況以後要注意,如果測試不太複雜且有測試條件的話,提供給別人解決辦法的同時,最好是自己試用過的)
解決過程(外掛程式使用,轉帖):
step1.
將外掛程式com.lifesting.tool.encoding_1.0.0.jar拷貝到eclipse/plugins目錄下,重啟Eclipse。
step2.
選擇某個項目,右鍵選擇properties,然後點擊Convert Setting進行轉碼規則設定,如:
(圖2 項目轉碼規則設定)
這個表格有四列,分別是檔案尾碼
,檔案目前編碼
,轉換後的編碼
,是
否轉換檔內容,
如果轉換檔內容,那麼對應的是前面所說的第二種情況,不轉換檔內容對應的是第一種情況。比2的轉碼規則就是對項目的jsp檔案,不管原來是什麼編碼,統一轉為UTF-8編碼,並且同時轉換檔
內容
。可以點擊右邊的Add /Remove按鈕來增加/刪除規則。最後點擊Apply來儲存設定。
step3
. 轉碼
在設定了轉碼規的項目上,右鍵選擇項目,某幾個檔案夾或某幾個檔案(當然一個也可以),然後點擊Lifesting Tools->Set
Encoding。外掛程式將完成轉碼工作。如果我們選擇的是項目,將轉換整個項目;如果選擇的是檔案夾,轉換檔夾下所有滿足規則的檔案;如果選擇的是文
件,只轉換檔。
(圖3 轉碼)
除了這方式外,我們還可以利用Eclipse的檔案搜尋功能,將搜到的檔案進行轉碼,如:
(圖4 在search view裡轉碼)
如所示,我們搜到了整個workspace的jsp檔案,然後點擊綠色E小表徵圖,外掛程式將會把所有滿足結果的檔案轉碼,每個檔案的轉換規則依賴它所屬項
目的轉碼規則設定。