2010-12-15 8 views
3

私はJavaCommを使用しており、シリアルポートオブジェクトからinputStreamを取得しています。私は、システムが起動したときにバッファに欲しくないノイズ文字があることがあるという点で問題があります。シリアルポートを初期化してから、処理を開始する前に、どうにかしてすべてのデータの入力をフラッシュしたいと思います。JavaシリアルInputStreamをどのようにフラッシュしますか?

これを行う方法はありますか?

TY フレッド

答えて

5

方法「フラッシュ()」メソッドは、ゴミが何であるかを知っているし、実際のデータ何でしょうか?あなただけが知っている、あなたのプログラムは、主要なゴミを無視する準備ができている必要があります。

EDIT:リクエストを送信する前に入力バッファ内のすべてのデータがガベージであることが絶対に確かである場合は、入力データがなくなるまで読み取ります。つまり、自分でフラッシュします。

+0

私はリクエスト後に私に応答を送るだけのデバイスがあります。したがって、最初のリクエストを送信する前にフラッシュして、バッファが最初は空であることを保証することができました。 –

+0

これはあなたがこの回答を受け入れることを意味しますか? –

+0

InputStreamの基底クラスは、フラッシュメソッドを持っていないようです。 –

2

デバイスへのリクエストを送信する前にできることをすべて読んでください。何も読まなくても、リクエストの送信を開始できます。

関連する問題