IDEA:
一. 文件編碼修改
IntelliJ IDEA可以在菜單中的File -> Settings -> Editor -> File Encoding下修改項目文件的編碼
1. IDE 的默認的全局編碼是 UTF-8,Project Encoding 默認會是操作系統的 GBK,一般會修改為 UTF-8
2. IntelliJ IDEA 可以對 Properties 文件進行專門的編碼設置,也建議改為 UTF-8,其中有一個重點就是屬性 Transparent native-to-ascii conversion,一般都要勾選,不然 Properties 文件中的注釋顯示的都不會是中文
3. IntelliJ IDEA 除了支持對整個 Project 設置編碼之外,還支持對目錄、文件進行編碼設置。如果你要對目錄進行編碼設置的話,可能會出現需要 Convert 編碼的彈出操作選擇,強烈建議 在轉換之前做好文件備份,不然可能出現轉換過程變成亂碼,無法還原
4. 另外,單獨文件的編碼也可以這樣設置
可能會彈出這樣一個彈框
1. Reload
表示使用新編碼重新加載,新編碼不會保存到文件中
2. Convert
表示使用新編碼進行轉換,新編碼會保存到文件中
3. 含有中文的代碼文件,Convert
之后可能會使中文變成亂碼,所以在轉換成請做好備份,不然可能出現轉換過程變成亂碼,無法還原
二. 編碼問題引起的編譯錯誤
編譯報錯:找不到符號、未結束的字符串文字 等的解決辦法:
1. 由於 UTF-8 編碼文件有分 有BOM 和 無BOM 之分,默認情況下 IntelliJ IDEA 使用的編譯器是 javac,而此編譯只能編譯 無BOM 的文件,有很多 Eclipse 用戶在使用 IntelliJ IDEA 開發 Eclipse 項目的時候常常會遇到此問題。主要是因為 Eclipse 的編譯器是 Eclipse,此編譯器支持 有BOM 的文件編譯。故,解決辦法是對於此文件進行 BOM 去除
2. 批量去除 BOM,你可以 Google:批量去除 BOM、批量轉換無 BOM 等關鍵字,網絡上已有提供各種方案
3. 如果上述問題都無法解決,而且你也確認 IntelliJ IDEA 各個配置編碼的地方都是 UTF-8,報錯文件編碼也是是 UTF-8 無 BOM 的話,那還有一種可能也會出現這種情況:項目配置文件有問題。項目編碼的配置文件在:/項目目錄/.idea/encodings.xml。如果你會修改此文件可以進行修改,如果不會,那就刪除掉 .idea 整個目錄,重啟 IntelliJ IDEA 重新配置這個項目即可
三. tomcat 控制台輸出亂碼
1. 如果你的 Tomcat 控制台輸出亂碼,並且你已經保證了本文上面的控制台字體設置你設置的字體包含中文,那你還可以嘗試下在 Tomcat 的 VM 參數上加上:
-Dfile.encoding=UTF-8
2. 打開Intellij的安裝的bin目錄(D:\JetBrains\IntelliJ IDEA 2019.1.3\bin),找到這兩個文件(根據你的系統是32位或64位選擇其中一個配置文件),在配置文件中添加:
-Dfile.encoding=UTF-
8
3. 對於maven構建的項目,由於idea中maven的配置優先,需要在pom.xml中對maven-surefire-plugin進行配置。
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12.4</version>
<configuration>
<forkMode>once</forkMode>
<argLine>-Dfile.encoding=UTF-8</argLine>
</configuration>
</plugin>
</plugins>