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

Java将序列化在对象中的文件读取到arrayList中

戈建白
2023-03-14

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

try
{
    ObjectInputStream in = new ObjectInputStream(new FileInputStream("contactList.dat"));
    Contact temp;
    while (in.available()!=0)
    {
        temp = (Contact)in.readObject();
        contactsCollection.add(temp);

    }
    in.close();
}

共有1个答案

胡星汉
2023-03-14

这是ObjectInPutStream.Available的已知行为,它总是返回0,请参见http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4954570。相反,您可以从文件中读取对象,直到抛出EOFException,捕捉它并中断。

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

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

  • } PS,arrayList中的内容插入到程序中的某个点,因此arrayList不是空的。

  • 我是一个编程初学者,我需要一些帮助,试图从文本文件读取到包含不同类型对象的ArrayList。我已经创建了一个控制视频目录的程序,我目前已经硬编码到程序中的ArrayList中,但我想改变这一点,所以每次程序运行时,程序都从包含目录的文本文件中读取,并将其转换为ArrayList,而不是从已经在程序中的ArrayList中读取。我已经添加了一个函数,一旦程序退出,它就会将清单写入文本文件,但我似乎

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

  • 问题内容: 问题是,当我将序列化对象存储在.txt文件中时,它的格式不是可读的,并且包含一些随机的符号和字母。首先,我想知道其背后的原因是什么,然后如何解决此问题。 好了,这是我的代码:我要序列化的对象 序列化 } 反序列化 输出: 问题答案: 存储在文件中的序列化对象不可读 除了通过反序列化之外,它们并不可读。 问题是,当我将序列化对象存储在.txt文件中时,它的格式不是可读的,并且包含一些随机