我的 UTF-8 字符串已通过以下方式转换为 ISO-8859-1 字符串:
- 字符 0 到 127(十六进制 0x7F(保持不变(0-9,a-z,A-Z 等(。 字符
- 128 及以上已转换为两个 ISO-8859-1 字符:
é
变为é
,Ͷ
变为Ͷ
,等等。
有没有办法撤消此转换,例如é
变得é
?
假设我们有一个包含双 iso-8859-1 字符的字符串,例如é
。
要将双 iso-8859-1 转换为 UTF-8 字符,我们可以使用此构造函数String
.传递一个byte
数组和一个CharSet
对象。类java.nio.charset.StandardCharsets
为各种CharSet
对象提供常量。
String accentE =
new String(
"é".getBytes(StandardCharsets.ISO_8859_1),
StandardCharsets.UTF_8
)
;
这是é
查看此代码在 IdeOne.com 实时运行。