检查字节数组中的字节是否为Unicode

时间:2012-12-17 16:49:54

标签: java android unicode byte

如何检查字节数组中的字节是否为Unicode字符?

主要问题:

android 4.2 new String(bytes) remove unicode chars from my String: [\uFFFD]

我需要一个解决方法。

2 个答案:

答案 0 :(得分:2)

return Charset.forName("UTF-8").newEncoder().canEncode(string);

更新:您没有将Charset传递给new String(bytes),因此它假设您使用的是默认字符集。相反,例如,做new String(bytes, "UTF-8")

答案 1 :(得分:1)

不,不是真的。例如,您可以通过观察字节数组中的字符不违反UTF-8规则来猜测。有关更多信息,请参阅http://blogs.msdn.com/b/oldnewthing/archive/2007/04/17/2158334.aspx