永发信息网

java.io.EOFException at java.io.DataInputStream.readInt(Unknown Source)

答案:2  悬赏:20  手机版
解决时间 2021-01-29 16:09
  • 提问者网友:泪痣哥哥
  • 2021-01-29 10:47
Socket socket = new Socket("localhost", 8899);
DataInputStream in = new DataInputStream(socket.getInputStream());
System.out.println(in.available()+"///////");//打印结果为0
int PackLen = in.readInt();//这行报出标题所示的异常

EOFException - 如果此输入流在读取这八个字节之前到达末尾。
我在写一个通过SMGP协议实现收发信息的功能
因为之前没有接触过这些东西,而时间又比较紧张就从网上下载了例子
可是代码运行到这里就报异常了 我不太清楚当时作者为何要这样来定义这个变量,用意是什么。我想请问大家 都有什么原因会导致这样的异常出现,应该怎么解决这个异常?
主意socket建立连接是成功的!
先谢谢各位了,比较棘手!大家帮帮忙!
最佳答案
  • 五星知识达人网友:怀裏藏嬌
  • 2021-01-29 11:24
这个是io流错误,运用的输入流,这个错误显示readInt(Unknown Source),所以你首先要建立输出流,输出到一个文本,然后从文本里面读取,因为是DataInputStream所以你是看不到文本里面的东西的,只有读取可以。问题是:没有输出,无法读取到数据。
全部回答
  • 1楼网友:洎扰庸人
  • 2021-01-29 12:16
datainputstream/dataoutputstream是用来序列化和反序列化的类吧? 这个一般用于把一个java对象写入到文件,然后读进来,rmi时用的多。 不是用户读取文本文件的。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯