当我运行以下程序时:
public static void main(String args[]) throws Exception
{
byte str[] = {(byte)0xEC, (byte)0x96, (byte)0xB4};
String s = new String(str, "UTF-8");
}
在 Linux 上检查 jdb 中 s 的值,我正确地得到:
s = "ì–´"
在 Windows 上,我错误地得到:
s = "?"
我的字节序列在韩语中是一个有效的 UTF-8 字符,为什么它会产生两个截然不同的结果?