Rausfinden ob noch Objecte in ObjectInputStream

Status
Nicht offen für weitere Antworten.

Empire Phoenix

Top Contributor
Main Problem besteht darin, dass ich ein ByteArrayInputStream habe, welches eine unbekannte Länge besitzt und in dem eine unbekannte Anzahl von Objecten gespeichert sind. Das Problem besteht jetzt darin diese einzulesen, woran ich scheitere. Weil ich schlichtweg nicht weiß ob noch weitere Objecte zum lesen vorhanden sind. die methode aviable() scheint zudem nicht in verbindung mit ByteArrayInputStreams zu funktionieren (sie liefert immer 0 obwohl in meinen tests mindestens noch ein object lesbar ist).

Existiert hierzu eine Lösung/Ansatz/Workaround?
 
T

tuxedo

Gast
Bei Object*Streams musst du einfach wissen welche Objekte da drin sind und in welcher Reihenfolge und vor allem wieviele...

Weißt du das nicht, so ist an deinem "Protokoll" etwas schief ...

Warum schickst du da keine Info mit wieviele Objekte drin sind?
 

Empire Phoenix

Top Contributor
@Michael
Weil ich nicht weiß wann er zuende ist, bis mir die Exceptions umme Ohren fliegen und ich ds irgetwie unsauber finde


Dachte das geht auch anders, naja dann schick ich halt nen short vorraus mit der Anzahl der Objecte
 
S

SlaterB

Gast
noch geschickter: nie mehr als ein Objekt in einem Stream,
wenn du doch drei hast, stecke sie in eine Liste und schicke die Liste bzw. schicke immer eine Liste oder sonst ein höheres Kontrollobjekt,
das kannst du ganz normal auslesen, die Länge abfragen, Elemente entnehmen usw.
 
Status
Nicht offen für weitere Antworten.

Ähnliche Java Themen


Oben