關於IDEA中"transparent native-to-ascii conversion"的解釋


 

 

關於這個要不要勾選,先總結一句話:團隊開發統一標准,個人開發保持習慣。
官方解釋如下:
點擊查看官網解釋.

 

 

簡單來講,java默認采用iso8859-1編碼讀取,勾選這個后,實際存儲變為ASCII碼字符,這樣是能正常解析的;
實際效果
test.name=\u54C8\u54C8
test.number=456
12
顯示效果
test.name=哈哈
test.number=456
12
這其實只是編輯器的優化而已,並非本來面目,用sublime等文本編輯器打開就能看到實際效果。
再來說properties本身的編碼:
如果用iso8859-1,文本編輯器打開后中文字符亂碼,讀取也是亂碼(這是顯然的,認不出來);
如果是utf-8編碼,文本編輯器打開后中文字符顯示正常,讀取還是亂碼,上面講到了,底層讀取的編碼為iso8859-1。
撇開文本編碼,存儲成ASCII字符是正常的,java也會識別\uxxxx,這也是建議勾選的原因。
對比下eclipse(oxygen):創建properties(默認iso8859-1)后,編輯中文時也是自動轉成了\uxxxx,用utf-8編碼時,不會做自動轉換。
具體方案:
勾選時:正常使用,IDE等提供預覽支持;
未設置:保證讀取編碼正確。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM