gpt4 book ai didi

java - 我想写入和读取文件,当我运行 : java. io.EOFException 时出现此错误

转载 作者:行者123 更新时间:2023-12-01 11:15:06 25 4
gpt4 key购买 nike

我有这个类 Dictionar ,实现了 Serialized 和类 ScriereCitire包 Controller ;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;

public class ScriereCitire {

public void scriere(Dictionar dictionar){
try (FileOutputStream fileOut = new FileOutputStream("dict.txt")){
ObjectOutputStream objOut = new ObjectOutputStream(fileOut);
objOut.writeObject(dictionar);
objOut.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}

}

public Dictionar citire(){
try(FileInputStream fileInput = new FileInputStream("dict.txt")){
ObjectInputStream objInput = new ObjectInputStream(fileInput);
@SuppressWarnings("unused")
Dictionar dictionar = (Dictionar)objInput.readObject();
objInput.close();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;

}

}

我在项目中创建了一个名为 dict.txt 的文件。我有一个类缅因州,我称之为 GraphicInterface,它调用 ScriereCitire。但当我运行时,它指出这是一个错误:

java.io.EOFException
at java.io.ObjectInputStream$PeekInputStream.readFully(Unknown Source)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(Unknown Source)
at java.io.ObjectInputStream.readStreamHeader(Unknown Source)
at java.io.ObjectInputStream.<init>(Unknown Source)
at controler.ScriereCitire.citire(ScriereCitire.java:27)
at view.GUI.<init>(GUI.java:46)
at controler.Main.main(Main.java:11)

最佳答案

您以某种方式创建了一个空文件。可能您在创建它时遇到了异常并忽略了它。

I created a file named dict.txt in the project

如何?为什么?

注意序列化数据不是文本,不应放置在名为 .txt 的文件中。

关于java - 我想写入和读取文件,当我运行 : java. io.EOFException 时出现此错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31929864/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com