2012-07-17 30 views
5

我不得不將Eclipse Indigo編碼更改爲UTF-8。現在所有作爲éàçè的特色角色都被替換爲 。將Eclipse更改爲UTF-8編碼後文本損壞

我可以做一個搜索和替換,但我不知道是否有更好的解決方案。

感謝

+0

然後,您需要項目特定的編碼。 – 2012-07-17 14:26:36

+1

檢查出http://stackoverflow.com/questions/64860/best-way-to-convert-text-files-between-character-sets,因爲這似乎是你想要的 – 2012-07-17 14:28:04

+1

@MarcoTopolnik他已經改變了編碼,現在他必須處理破碎的字符。如果他確實想要另一種編碼,我認爲他會像以前一樣留下它;) – 2012-07-17 14:30:10

回答

7

更改Eclipse中的編碼不改變現有的文件:它只改變Eclipse中讀取它們的方式。

您需要的是將舊文件轉換爲UTF-8以及配置Eclipse。

有一些工具可以做到這一點,你也可以寫一個小的Java程序。

如果要使用現有的工具,這是第一個,我發現:http://www.marblesoftware.com/Marble_Software/Charco.html(你可以找到一個更好的爲你的(不明)OS

如果你想自己寫一個工具(約20 LOC ),要知道的是,你必須:

這裏的核心操作:

reader = new BufferedReader(new InputStreamReader(new FileInputStream(...), "you have to know it")); 
    writer = new OutputStreamWriter(new FileOutputStream(...), "UTF-8"); 
    String line; 
    while ((line=reader.readLine())!=null) { 
    writer.write(line); 
    } 
2

我推薦notepad ++進行轉換。這是一個編輯器,它有一些非常有用/強大的視圖和轉換工具來排查字符集。 還有一些更「瑞士刀」般的功能(文件比較,先進的搜索和替換,還有更多......)

notepad++

+0

很遺憾,像eclipse這樣的大型工具沒有內置此功能。 – 2017-11-11 23:46:47

0

僅僅只需要Alt + Enter鍵,然後選擇資源UTF-8

+1

即使霓虹燈3也不能自動進行傳輸。首先將資源更改爲ISO-8859-1或根據文件的實際編碼,將文本剪切到剪貼板並將文件保存爲空。不要忘記關閉編輯器。然後執行alt +輸入技巧並更改文件編碼,打開文件並粘貼內容。 – 2017-06-30 07:22:21