小编Yus*_*494的帖子

尝试从套接字读取时java.io.EOFException

我不知道为什么会出现java.io.EOFException.我想从服务器获取二进制流后写一个文件.

这是我的代码

inputStream = new DataInputStream(new BufferedInputStream(connection.getInputStream()));
FileOutputStream fos = new FileOutputStream("D:/Apendo API resumable download.txt");

byte b = inputStream.readByte();
while(b != -1){
        fos.write(b);
        b = inputStream.readByte();                       
       }
fos.close();
Run Code Online (Sandbox Code Playgroud)

堆栈跟踪

java.io.EOFException
at java.io.DataInputStream.readByte(DataInputStream.java:267)
at HttpRequestJSON.JSONRequest.sendRequest(JSONRequest.java:64)
at HttpRequestJSON.Main.main(Main.java:56)
Run Code Online (Sandbox Code Playgroud)

java io file eofexception

4
推荐指数
1
解决办法
4万
查看次数

为什么如果没有执行正确的条件

我有一个代码,像这样

public static Response updateDataFiles(String id, String checksum){
    SessionFactory sf = HibernateUtil.getSessionFactory();
    Session session = sf.openSession();
    Transaction trans = session.beginTransaction();

    Files files = (Files) session.get(Files.class, id);
    System.out.println("checksum "+checksum);
    System.out.println("checksum file "+files.getChecksumFile());
    String checksumFile = files.getChecksumFile();
    if(checksum == checksumFile){
        System.out.println("upload success");           
        files.setStatusUpload(EnumStatusUpload.statusUpload.UPLOADED_AND_SUCCESS.toString());                                   
    }else{
        System.out.println("upload success but checksum error");            
        files.setStatusUpload(EnumStatusUpload.statusUpload.UPLOADED_BUT_ERROR_CHECKSUM.toString());
    }
    session.update(files);
    trans.commit();
    session.flush();
    session.close();

    Response respon = new Response();
    respon.status = 200;
    return respon;
}
Run Code Online (Sandbox Code Playgroud)

如果if(checksum == checksumFile)出现问题,则校验和变量和checksumFile具有相同的值,但如果没有执行正确的条件,则执行其他条件.在我的日志中,我看到了校验和变量的值,而校验和文件就像这样

checksum      9d73d945294d5488056bb5da54f62e8f
checksum file 9d73d945294d5488056bb5da54f62e8f
Run Code Online (Sandbox Code Playgroud)

我不知道我的代码有什么问题.谁能帮我?抱歉我的英语不好

java

0
推荐指数
1
解决办法
75
查看次数

标签 统计

java ×2

eofexception ×1

file ×1

io ×1