2016-11-18 5 views
0
do 
     { 
      try 
      { 
       message = (String) input.readObject(); 
       showMessage("\n" + message); 
      } 
      catch(ClassNotFoundException cnfe) 
      { 
       showMessage("\nI don't know that object type"); 
      } 
     } 
     while(!message.equals("SERVER - END")); 

Привет всем, мне было трудно понять, как решить этот вопрос, так что я должен был отправить его здесь. Я хотел бы получить серьезный ответ о том, что делать, чтобы исправить этот код. В основном, когда я читаю, какой сервер отправил мне, я получаю EOFException для readObject(). Мой сервер посылает сообщение и клиент читает егоreadObject() EOFException на клиенте

output.writeObject("SERVER - " + message); 
      output.flush(); 

Мои вопросы я должен использовать writeUTF и readUTF или я могу сделать как-то readObject и writeObject работать?

ответ

1

EOFException может возникать в ObjectOutputStream, если вы смешиваете режимы записи/чтения, например. если вы напишитеUTF и readObject.

Однако я бы использовал writeUTF/readUTF с DataOutputStream и DataInputStream, поскольку они намного проще.

Смежные вопросы