Strumienie - spradzanie czy jest pełny

0

Czy da się w jakiś sposób sprawdzic czy w strumieniu znajdują się dane? Bo wiem ze moge wysylac do strumienia caly czas jakas informacje a jakis byte moze oznaczac nie rob nic. Ale wolalbym nic nie wysylac poniewaz robie komunikacje klienta-mobilnego z serwerem i kazde przesylanie danych jest kosztowne.

0

W InputStream masz metode available() ktora podaje mniej wiecej ile bajtow jest dostepnych. To po stronie klienta.
Po stronie serwera nie musisz sprawdzac czy OutputStream ma dane poniewaz przeciez wiesz czy cos do niego zapisales czy nie.

0

Po stronie serwera użyj klasy BufferedOutputStream.
W konstruktorze jako size podaj odpowiednią wielkość paczki do wysłania.

http://java.sun.com/javase/6/docs/api/java/io/BufferedOutputStream.html

0

Dzieki za odp. Zrobilem to w sposob nastepujacy (moze komus sie przyda):

serwer odbiera boolean
jesli true to komenda, natomiast komenda oznacza pewien rodzaj akcji (typ byte)
jesli false - nie ma komendy do wykonania zatem idz dalej

1 użytkowników online, w tym zalogowanych: 0, gości: 1