将字符串从代码页1252转换为1250

如何将具有在代码页1252中解码的字符的一个String转换为在代码页1250中解码的String

例如

 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()应该正确输出它。

Interesting Posts