[英]java.util.Properties encoding
我在两个不同的系统上得到不同的结果,不知道为什么。
Properties prop = new Properties();
prop.load(new ByteArrayInputStream(input)); //input is byte[]
在两个系统上,输入都包含"var=\\\Ä\\\Ü\\\Ö\\\ä\\\ü\\\ö"
。
在我的测试系统道具中包含"var=ÄÜÖäüö"
。 (这就是我要的)
在另一个系统道具上包含"var=\\xC4\\xDC\\xD6\\xE4\\xFC\\xF6"
。 这是十六进制input
,但为什么Properties
会这样做? 不幸的是,我对其他系统配置一无所知。
有人知道原因吗?
Java .properties
文件使用ISO-8859-1
( Latin-1
) UTF-8
,而不是UTF-8
。 所有非拉丁 1 字符必须使用 Unicode 转义字符输入,例如\\uHHHH
。
另一种方法是使用XML
格式的属性,即UTF-8
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.