テキスト文字列が特定のエンコーディングでバイト配列にシリアル化されていることを確認/テストする最良の方法は何ですか?
私の場合、XML構造が可変文字長のUTF-8エンコーディングを使用してバイト配列にシリアル化されていることを確認したいと思います。例として、私の現在の醜い手順は、シリアル化する前に2バイトを必要とすることがわかっている文字を構造体に挿入し、2バイト文字をASCII文字に置き換えて、シリアル化された配列の長さを比較することです。これにより、2バイト文字を含む配列の長さが+1になる、2つのシリアル化された配列が生成されます。
さらに、ソリューションがJavaに対してエレガントである場合。バイト配列でバイトシーケンスを探すための洗練された方法は考えられません。(UTF-8で目的の文字表現を表す既知のバイトシーケンスを探すために使用できます。)
おそらく、既知のエンコーディングを使用してバイト配列を逆シリアル化し、(a)例外をスローしないこと、および(b)元の文字列に逆シリアル化することを確認できます。シナリオの説明から、元の文字列をすぐに利用できない可能性があります。それを作成する方法はありますか?
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加