2009-05-05 7 views
2

私のネットワーク接続から、一連のヌル終了文字列(およびその他のバイナリデータ)としてシリアル化されているメッセージを読んでいます。NULLが見つかるまでBinaryReaderを使用して一度にcharを読み取ることができました。.NETでヌル終了文字列を逆シリアル化する最も良い方法は何ですか?

もっと簡単な方法がまだありますか?長さが64文字未満の文字列を期待していますが、長くてもかまいません。

答えて

5

私はバイト単位で読むのは合理的な選択だと思っていますが、BufferedStreamを使って基本ストリームのIOを最小限に抑えます。

2

文字列にすべてを読み込み、String.Splitを使用してnullを分割します。

文字列は.NETではNULLで終了しないことに注意してください。

+2

メッセージ全体がどれくらいの期間(または終了するかどうか)は言いませんでした。すべてのことを読む良いチャンスは実現可能ではありません。 –

+1

一方、それが実行可能でないことを確認するために十分な情報が質問にありません。 OPがなければ誰か他の人を助けるかもしれない良い考えです。 – ScottS

+0

実際には、行間を読むと十分な情報があります。彼は、ネットワーク接続から入力データを取得していると言います。これは、winpcapまたはsimliar APIを使用することを意味します。したがって、Matthewが述べたように、彼は大量のデータストリームからインプットを引っ張っている可能性が高いです。 –

関連する問題