我有一个关于我正在处理的数据结构的项目。我有一个LinkedList,我需要能够将对象数据保存到文本文件
“创建一个文本文件,它是姓氏,名字和电子邮件地址的列表。您可以使用CSV或任何其他分隔符”
当我尝试保存对象数据时,我得到的是“约翰”,而不仅仅是“约翰”
我的课程(主要和学生,以及电子邮件)实现了Serializable
public class Main implements Serializable
{
public static void main(String[] args) throws IOException
{
Date date = new Date();
Email e1 = new Email("js@got.com");
Email e2 = new Email("doge@me.me");
Email e3 = new Email("admin@microvern.com");
Student s1 = new Student("John", "Snow", e1);
Student s2 = new Student("Shiba", "Inu", e2);
Student s3 = new Student("Vern", "Vern", e3);
Student s4 = new Student("Professor", "Messer", new Email("pm@cs.net"));
ListInterface<Student> linkedList = new LinkedList<Student>();
linkedList.add(s1, 2); //should be pos 3
linkedList.add(s2, 3); //should be pos 4
linkedList.add(s3, 1); // should be pos 2
linkedList.add(s4, 1); //should be pos 1
System.out.println(linkedList);
try
{
FileOutputStream fos = new FileOutputStream("students.txt");
ObjectOutputStream output = new ObjectOutputStream(fos);
output.writeObject(s1.getfirstName());
output.close();
fos.close();
System.out.println("Data saved in /file/students.txt");
}
catch (IOException exc)
{
System.out.println("Failed to write to file!");
exc.printStackTrace();
}
}
}
谢谢!
答案 0 :(得分:0)
如果要写入CSV
文件,则无需实现Serializable
接口。使用序列化,您无法编写csv
文件。序列化过程将对象状态写入。sar
文件。您可以考虑使用某些CSV
库,也可以编写它。您可以查看this tutorial。