1
我在一個java項目上工作,其中標籤被外化並翻譯成.properties
文件。爲什麼不將所有.properties文件轉換爲UTF-8?
Java中的資源使用ISO-8859-1編碼讀取,因此.properties
文件也存儲在ISO-8859-1編碼中。
當前文件被搞亂了,有時使用轉義\u00E4
,有時使用實際的字母öäü
。
我也有俄語翻譯,看起來是這樣的:
code.adr=\u0430\u0434\u0440\u0435\u0441
這可以使用UTF-8明文存儲。
現在的問題是,爲什麼不使用UTF-8?
爲什麼Java在默認情況下使用ISO-8859-1而不是UTF-8,向後兼容?
是否有任何已知的缺點,將所有.properties
文件轉換爲UTF-8?
該規範是在UTF-8成爲普遍接受的默認編碼之前編寫的。既然它是這樣指定的,它必須保持這樣。這就是說,你*可以*加載你選擇的編碼屬性文件,但期望有一些混淆(我隱約記得一些Spring組件實際上使用默認的UTF-8)。 –