【发布时间】:2011-08-05 20:20:15
【问题描述】:
我认为 UCS-2 到 ISO-8859-1 是一样的
rawData = new byte[data.length()];
for(int i=0; i<data.length(); i++) {
rawData[i] = (byte)(data.charAt(i) & 0xff);
}
这似乎是错误的。为什么上面的代码不等同于data.getBytes("ISO8859_1")?我在 Android 上。
事实上,我的一些角色是0xf700 & (byte)。出于某种原因,当您使用XMLHttpRequest 和Charset: x-user-defined 获取二进制文件时会发生这种情况。当转换为latin1 时,这些字符会变成?(问号)。
【问题讨论】: