Toon posts:

[JAVA] readUTF probleem

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben bezig met een programmaatje dat via het netwerk kan communiceren, alleen krijg ik op bepaalde momenten de volgende foutmelding
code:
1
2
3
4
5
java.io.EOFException
            at java.io.DataInputStream.readUnsignedShort(Unknown Source)
            at java.io.DataInputStream.readUTF(Unknown Source)
            at java.io.DataInputStream.readUTF(Unknown Source)
            at project.client.Client.run(Client.java:67)

Mijn Client.java regel 67 ziet er zo uit:
Java:
1
String s = in.readUTF();

Het rare is dat hij hier over readUnsignedShort() begint. Heeft iemand enig idee of readUTF() misschien readUnsignedShort() aanroept?

mijn in is een DataInputStream, gecreeerd uit een Socket.getInputStream() en deze werkt verder wel

  • Donderwolk
  • Registratie: Januari 2002
  • Laatst online: 15-05 15:27
Weet je zeker dat het een UTF String is die je binnenkrijgt?

Probeer anders even een try catch constructie om je functie heen te zetten als je dat nog niet hebt. Meer dan debuggen kan ik je niet aanraden op het moment.

Nog een linkje:
http://java.sun.com/j2se/...nputStream.html#readUTF()

Hier staat dus:
Throws:
EOFException - if this input stream reaches the end before reading all the bytes.

Het zou dus best kunnen zijn dat je het einde van de stream te pakken hebt

[ Voor 42% gewijzigd door Donderwolk op 25-02-2004 10:21 ]

Pwnd


  • SWfreak
  • Registratie: Juni 2001
  • Niet online
Wat readUTF doet is eerst een readUnsignedShort() om de lengte van de stream te bepalen en vervolgens leest ie pas echt (en wel zoveel als readUnsignedShort aangaf). In jouw geval kan ie de lengte van de stream al niet bepalen. Zoals Donderwolk al zei: je hebt het einde van je stream al te pakken kennelijk...

Verwijderd

Topicstarter
Het is intussen opgelost, het was een probleem aan de serverkant