如何将String
在代码页 1252 中解码的字符转换为String
在代码页 1250 中解码的字符。
例如
String str1252 = "ê¹ś¿źæñ³ó";
String str1250 = convert(str1252);
System.out.print(str1250);
我想找到这样的convert()
功能,打印输出将是:
ęąśżźćńłó
这些是波兰语特有的字符。
感谢您的任何建议。
这很简单:
public String convert(String s) {
return new String(s.getBytes("Windows-1252"), "Windows-1250");
}
请注意,由于 ANSI 和 OEM 代码页之间的不匹配,System.out.print()
可能会引入另一个不正确的转换。但是System.console().writer().print()
应该正确输出。