を使用するストリーム リーダー クラスの改善に取り組んでいますBinaryReader。.PeekChar()これは、処理を続行するためにさらにデータが存在するかどうかを確認するために使用する while ループで構成されています。
最初の操作は、.ReadInt32()4 バイトを読み取る a です。PeekChar1 バイト (または 1 ビット) だけを "見た"としたら? これは、EOF をチェックする信頼できる方法とは思えません。
はBinaryReader、デフォルトのパラメーターを使用して構築されており、私が理解しているように、デフォルトのエンコーディングとして UTF8 を使用しています。8ビットを.PeekChar()チェックすると思いますが、よくわかりません。
何ビット.PeekChar()を探しますか? (そして、EOFをチェックするための代替方法は何ですか?)