0

我现在正在使用以下代码,但效果不佳。只有几个词可以转换。

public String convert(String big5) throws java.io.UnsupportedEncodingException {
    byte[] tmp = big5.getBytes( "UTF-16BE");
    String result = "";
    for (int i=0; i<tmp.length; i++) {
        result += Integer.toHexString(((int)tmp[i]));
    }

    return result.toUpperCase();
}
4

1 回答 1

1

这对你有用吗?

result += Integer.toHexString(((int)(tmp[i] & 0xFF)));

要将字节值视为无符号,您需要使用 0xFF 进行按位 &。

希望这可以帮助。

于 2013-04-30T17:40:15.033 回答