当前位置: 首页 > 知识库问答 >
问题:

如何从文件中读取对象?-Java序列化

步联
2023-03-14

我必须将对象(播放器)保存到文件列表中,然后当我再次打开程序时,我必须与播放器一起读取该文件并将其添加到列表中。但是我读这个文件有问题吗?我做错了什么?

public static void writeMethod (String sciezkapliku){
    try {
        FileOutputStream fileOut = new FileOutputStream(sciezkapliku);
        ObjectOutputStream out = new ObjectOutputStream(fileOut);
        for(int i = 0 ; i < MyFrame.listOfPlayer.size() ; i++) {
        out.writeObject(MyFrame.listOfPlayer.get(i));
        }
        out.close();
        fileOut.close();
        System.out.printf("Serialized data is saved ");
    } catch (IOException i) {
        i.printStackTrace();
    }

/////////////////////////////

public ArrayList<Player> readMethod (String sciezkapliku){
    MyFrame.listOfPlayer = null;
    try {
        FileInputStream fileIn = new FileInputStream(sciezkapliku);
        ObjectInputStream in = new ObjectInputStream(fileIn);
        MyFrame.listOfPlayer = (ArrayList) in.readObject();

        in.close();
        fileIn.close();
    } catch (IOException i) {
        i.printStackTrace();
    } catch (ClassNotFoundException c) {
        System.out.println("Employee class not found");
        c.printStackTrace();
}
    return (ArrayList<Player>) MyFrame.listOfPlayer;

}

共有1个答案

陆英毅
2023-03-14

这是您保存List所需的:

public static void writeMethod(String sciezkapliku) {
    try (ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(sciezkapliku))) {
        out.writeObject(MyFrame.listOfPlayer);
    } catch (IOException i) {
        i.printStackTrace();
    }
}
 类似资料:
  • 问题内容: 我将多个对象写入文件,然后在代码的另一部分中检索它们。我的代码没有错误,但是无法正常工作。您能帮我发现我的代码有什么问题吗?我从不同的网站阅读了不同的代码,但是没有一个对我有用! 这是将对象写入文件的代码:MyClassList是一个数组列表,其中包含我的类的对象(必须将其写入文件)。 我向输出流的构造函数添加了“ true”,因为我想将每个对象都添加到文件的末尾。那是对的吗? 这是我

  • 我试图将包含Contact类型的序列化对象的文件读入ArrayList ContactsCollection。我遇到的问题是联系的对象从未添加到ArrayList中。

  • 我正在尝试从检索或实例,而不将保存到文件系统。 中是否有任何方法从现有的返回或?

  • 我有一个avro文件,我想在将其转换为代表性对象后读取和操作它 我曾尝试在Java Spark中使用RDD和DataSet加载它,但在这两种情况下,我都无法转换为所需的对象 作为数据集 此操作失败,错误为“bean类中不能有循环引用,但得到了类org.apache.avro.Schema的循环引用” 作为RDD 如何将此RDD对象转换为RDD对象或数据集对象? 我对这个很陌生,所以如果我缺少一些基

  • 本文向大家介绍Java将对象保存到文件中/从文件中读取对象的方法,包括了Java将对象保存到文件中/从文件中读取对象的方法的使用技巧和注意事项,需要的朋友参考一下 1.保存对象到文件中 Java语言只能将实现了Serializable接口的类的对象保存到文件中,利用如下方法即可: 参数obj一定要实现Serializable接口,否则会抛出java.io.NotSerializableExcept

  • 问题内容: 我正在寻找一个JSON分析器,该分析器可以让我从大型JSON文件(大小为几百MB)中遍历JSON对象。我从Json.NET尝试了JsonTextReader,如下所示: 但是它在令牌之后返回令牌。 如果我需要整个对象而不是令牌,有没有更简单的方法? 问题答案: 假设您有一个与此类似的json数组: 我将为对象类型声明一个类 现在,反序列化部分 还有一个伪JsonConverter类来拦