大家好,我想通过网络从流中读取对象.我在用ReadInputObject方法.我在一个线程中实现它来接收数据.下面是线程中的while循环
while((dp = (DataPackage) ois.readObject()) != null)
{
Ball b = new Ball();
b.setX(dp.x);
b.setY(dp.y);
jTextField1.setText(b.getX() + " " +b.getY());
b.paint(ob.getGraphics());
b.setVisible(true);
ois.reset();
}
} catch (IOException ex) {
System.out.println("Error 1 is Here");
} catch (ClassNotFoundException ex) {
System.out.println("Error 2 is here");
} 问题是ois得到了第一个对象,然后.它进入异常并打印出这个错误1在这里
下面是我发送对象的代码
DataPackage dp = new DataPackage();
dp.x=b1.getX();
dp.y=b1.getY();
dp.t=b1.getT();
dp.dx=(int)b1.getDx();
dp.dy=(int)b1.getDy();
ObjectOutputStream oos = null;
try {
oos = new ObjectOutputStream(Server_login.client.getOutputStream());
} catch (IOException ex) {
Logger.getLogger(Game_Painters_right.class.getName()).log(Level.SEVERE, null, ex);
}
try {
oos.writeObject(dp);
} catch (IOException ex) {
Logger.getLogger(Game_Painters_right.class.getName()).log(Level.SEVERE, null, ex);
}我的代码有什么问题??谢谢
发布于 2012-12-08 14:23:34
那么,删除对ois.reset()的调用。为什么它一开始就在那里?
https://stackoverflow.com/questions/13778277
复制相似问题