DataInputStreamとBufferedInputStreamを使用してクライアントからファイルを受信するサーバープログラムを構築しようとしています。
これが私のコードで、無限ループに陥ります。これは、available()を使用していないためだと思いますが、よくわかりません。
DataInputStream din = new DataInputStream(new BufferedInputStream(s.getInputStream()));
//s is socket that connects fine
fos = new FileOutputStream(directory+"/"+filename);
byte b[] = new byte[512];
int readByte = din.read(b);
while(readByte != 1){
fos.write(b);
readByte = din.read(b);
//System.out.println("infinite loop...");
}
なぜそれが無限ループに陥るのか誰か教えてもらえますか?利用できないための場合、使い方を教えてください。私は実際にグーグルで検索しましたが、使い方に戸惑いました。どうもありがとうございます