Android 调用 Charset.forName() 出现 NoSuchMethodError 异常

鉴客 发布于 2011/07/07 11:27
阅读 1K+
收藏 1

看看下面的代码

private final static Charset UNICODE_CHARSET = Charset.forName("UTF-8");

public String makeNewUnicodeString(byte[] octects) {
    return new String(octects, UNICODE_CHARSET);
}

在电脑上运行正常,但是在模拟器上执行抛出异常

java.lang.NoSuchMethodError: java.lang.String.<init>

但是使用下面的代码就能正常执行

public String makeUnicodeString(byte[] octects) {
    try {
        return new String(octects, "UTF-8")
    } catch (UnsupportedEncodingException uee) {
       // never throw.
    }
}

我的环境是 Adroid 2.2 API 8, rev2.

 

加载中
0
红薯
红薯
这个还真是怪事了,是特殊情况吧,别人应该不会?
返回顶部
顶部