java中用DataInputStream读取数据的是后老是出现这样的问题?怎么解决?

流改关的我也关了啊。代码太多我就不全贴出来了
java.io.EOFException
at java.io.DataInputStream.readFully(Unknown Source)
at java.io.DataInputStream.readLong(Unknown Source)
at cn.deos.client.FileDownLoad.run(FileDownLoad.java:183)
at java.lang.Thread.run(Unknown Source)
提示这行有问题,有没有遇到相同类型问题的小伙伴啊!
图片说明

读取的长度比原长度长

 public final long readLong()
                    throws IOException见readLong法DataInput的一般合同。 
从所包含的输入流中读取此操作的字节数。 

Specified by: 
readLong在接口 DataInput 
结果 
该输入流的接下来的八个字节,解释为 long 。 
异常 
EOFException - 如果此输入流在读取八个字节之前到达结束。 
IOException - 流已关闭,包含的输入流不支持关闭后读取,或发生另一个I / O错误。 

这个是io流错误,运用的输入流,这个错误显示readInt(Unknown Source),所以你首先要建立输出流,输出到一个文本,然后从文本里面读取,因为是DataInputStream所以你是看不到文本里面的东西的,只有读取可以。问题是:没有输出,无法读取到数据。