0

バイト配列のバイトがUnicode文字であるかどうかを確認するにはどうすればよいですか?

主な問題:

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

これには回避策が必要です。

4

2 に答える 2

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

更新:にを渡さなかったCharsetためnew String(bytes)、デフォルトの文字セットを使用していることを前提としています。代わりに、たとえばnew String(bytes, "UTF-8")

于 2012-12-17T17:10:13.087 に答える
1

いいえ、そうではありません。たとえば、バイト配列内の文字がUTF-8ルールに違反していないことを確認することで推測できます。詳細については、 http://blogs.msdn.com/b/oldnewthing/archive/2007/04/17/2158334.aspxを参照してください。

于 2012-12-17T17:06:35.877 に答える