對於Java中的properties文件,沒有深究過,爲何文件中的非ascii碼字符須要使用unicode轉義碼的形式表示。
甚至於對於怎麼作成這種形式的文件都模糊不清。今天討論以後,而後查了一下資料,纔有了進一步的瞭解。java
由於通常解析Java中的properties文件時,都是使用Java自帶的類java.util.Properties。想要使用這個類就必須保證文件符合該類的解析格式要求。根據JDK文檔中的說明,load()和store()方法處理的字符是ascii碼以及unicode轉義碼。所以要保證作成的properties文件知足這種要求。web
一般的作法是按照不一樣文件編輯方式編輯保存,而後使用JDK的工具native2ascii 將文件轉換成這種格式。
即ascii碼之外的字符都使用\uxxxx的unicode轉義碼錶示。
native2ascii -encoding 當前字符集 轉換前文件名 轉換後文件名
相反的操做是能夠將該格式的文件轉換成本地編碼格式
native2ascii -reverse -encoding 指定字符集 轉換前文件名 轉換後文件名工具
也再次明確了native2ascii 不是將本地編碼格式的文件轉換成unicode編碼格式的文件,而是將非ascii碼的字符
用unicode轉義碼來顯示。
編碼