字符串中包含的特殊字符无法转换为实际字符

时间:2018-11-13 11:17:52

标签: java unicode special-characters properties-file latin

expected_string:您好“Ôppőrtunĩty” 01

properties_file_string:您好“Ôpp\ u0151rtun \ u0129ty” 01

默认字符集= Windows-1252

上面的字符串正在使用属性文件。因此,当粘贴到属性文件时,它将显示为properties_file_string。在控制台中打印后,该字符串显示为

你好“Ôpp?rtun?ty” 01

相反,有什么方法可以获取:您好“Ôppőrtunĩty” 01

1 个答案:

答案 0 :(得分:0)

Windows-1252只是Windows character set,是ISO-8859-1的超集。

这是由Microsoft开发的,主要由Microsoft Windows系统使用。此编码使用128-159代码范围显示ISO-8859-1字符集中未包含的其他字符。

由于此字符集未在所有平台和浏览器上标准化,因此这些字符代码不是有效的HTML,尽管它们可以在某些系统和浏览器上正确显示。使用这些字符代码将导致浏览器版本和操作系统之间的显示不一致。要正确显示这些字符,需要更高级的字符集和编码,例如UTF-8 Encoding Unicode Character Set.

有关ISO-8859-1 Difference between UTF-8 and ISO-8859-1

的更多信息