Skip to content
Advertisement

ObjectInputStream readObject in while Loop

Is it possible to read from ObjectInputStream in while loop which will terminate by exception thrown by socket timeout socket.setSoTimeout(4000);

JavaScript

Advertisement

Answer

JavaScript

When you say ‘not working’, what you really mean is ‘not compiling’, for reasons that are stated in the compiler message: Object isn’t a boolean expression, and you can’t declare a variable in a while condition.

However the code isn’t valid anyway. The correct way to read to end of stream of an arbitrary ObjectInputStream is catch EOFException, for example as follows:

JavaScript

Note that the suggestion in comments to test the readObject() return value for null is not correct. It will only return null if you wrote a null.

User contributions licensed under: CC BY-SA
2 People found this is helpful
Advertisement