尽管没有抛出任何异常,ObjectOutputStream仍不会写入文本文件

时间:2019-05-09 06:40:19

标签: java file-writing objectoutputstream

我想将已创建的对象写入文本文件Members.txt,但似乎无法写入,也没有例外。 Object类实现Serializable。

我尝试将对象添加到Arraylist,然后将Arraylist写入文件,并且还尝试直接写入对象。

Client client = new Client(name, age, email, phoneNum);

//test object 
System.out.print(client.toString());

/*write new obj to txt file*/
String filename = "Members.txt";

File file = new File(filename);

List < Client > obj;
obj = new ArrayList < Client > ();

obj.add(new Client(name, age, email, phoneNum));
obj.add(new Client(name, age, email, phoneNum));

try {
    //INCLUDES BOTH attempts
    //Attempt 1(Direct writing)

    boolean openToAppend = true;
    ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(file, openToAppend));
    out.writeObject(client);
    out.close();

    //Attempt 2 (using arraylist)

    FileOutputStream fileOut = new FileOutputStream("Members.txt");
    ObjectOutputStream out = new ObjectOutputStream(fileOut);
    out.writeObject(obj);
    out.close();
    fileOut.close();
    System.out.println("Print Successful");

} catch (FileNotFoundException ex) {
    ex.printStackTrace();
} catch (IOException ex) {
    ex.printStackTrace();
}

0 个答案:

没有答案