Java

Socketからのデータ読み込み(InputStream)

投稿日:2018年11月28日 更新日:

(問題点)

Socketからデータを読み込むときに、受信データの終わりが判断出来ないため、InputStream.readがブロックされる問題

 

(対応方法)

  1. クライアント側のクローズで判断する。
  2. クライアントがサーバ側へあらかじめ送るデータのバイト数を知らせておく。
  3. 何らかの特殊文字を決めておき、それに合致する文字が来たらクライアントからのデータ送信完了と判断する。

 

参考にさせて頂いたページ

Socketからのデータ読み込み考察-InputStream編

Socket - 理系学生日記

sockets - How to identify end of InputStream in java - Stack Overflow

 

 

スポンサーリンク

スポンサーリンク

-Java

執筆者:

関連記事

Javaのタイマー処理

スレッド動作について コンストラクタの引数の指定により、2つのスレッドモードで動作する。 デーモンスレッド : デーモンスレッドとは、プログラム終了時にスレッドの実行終了を待ちません。プログラム終了の ...