Java函数将Windows-1252编码为UTF-8,获得相同的符号

时间:2014-04-10 11:40:55

标签: java encoding utf-8

我是这个论坛的新手。我有关于编码Windows-1252到UTF-8之间转换的问题。

我有一个用Windows-1252编码的字符串(例如字符:¢)。我想获得相同的符号,但编码为UTF-8。我的意思是:我想要的源角色和目标角色总是相同(¢)但编码不同。

可能吗?另外:它存在一个自动执行此转换的Java函数(例如,通过传递起始编码和结束编码)?

提前感谢您的所有帮助。

您好, 西蒙

1 个答案:

答案 0 :(得分:0)

您可以使用字符串作为中介在各种编码之间进行转码:

byte[] windows1252 = { (byte) 0xA2 };
String utf16 = new String(windows1252, Charset.forName("windows-1252"));
byte[] utf8 = utf16.getBytes(StandardCharsets.UTF_8);
Java中的

char数据总是UTF-16。