1

入力としてバイト配列を期待する関数を書いています。この入力配列は、有効な ASCII 文字列を表す必要があります。

上記の要件を確認する方法を見つけようとしています。違いがある場合、配列の長さは 8 バイトである必要があります。

各バイトがASCII範囲内にあるかどうかを確認することを検討しましたが、複数バイトの文字では機能しません。

また、.NETがバイトを解析して無効な文字Encoding.ASCII.getString()を返すことも確認しました。'?'ブール値の検証を取得するために使用できる関数はありますか?

どんなアイデアでも大歓迎です。ありがとう。

4

1 に答える 1

1

ASCII で文字 0 ~ 127 を意味する場合は、非常に簡単に検証できます。

if (bytes.All(b => b < 128))

多くの 8 ビット エンコーディングの 1 つを意味する場合、無効なバイト シーケンスはありません。

于 2013-05-31T13:25:15.720 に答える