如何从javafx中的另一个类将数据写入.txt文件(FileWriter)

时间:2018-12-26 14:04:03

标签: java javafx

我正在作为学期项目制作电影院座位预订系统。我使用javafx将人名,电影名和座位号属性保存在.txt文件中,但是问题是当我为另一个人进行预订时,它会覆盖以前的记录。无论我进行多少预订,都只保存最后一个,因为每次都调用此行FileWriter data=new FileWriter("reservation.txt");。那么有没有办法在另一个类中创建.txt文件并在另一个类中写入数据,或者有其他解决方案?

try{
    FileWriter data=new FileWriter("reservation.txt");

    data.write("Customer Name: "+Cinemafx.name+"    ");
    data.write("Movie Name: "+movieselection.movie_name+"    ");
    data.write("Seat Numbers: "+listString+"    ");

    data.close();
}
    catch(Exception ex){
}

2 个答案:

答案 0 :(得分:1)

您可以将所有数据保存在一个集合中,并在这些集合中循环一次,然后将所有内容写入Flatfile中而不会覆盖它。或者,您也可以选择使用Filewriter将数据附加到文件中,看看这个问题:Java FileWriter with append mode

答案 1 :(得分:0)

您可以为每个注册创建一个新文件,并将其保存在注册文件夹中;这样,您不仅可以避免覆盖,而且为每个客户检索数据也将更加容易。因此,例如,您可以为文件指定客户名称,例如:

FileWriter data = new FileWriter(Cinemafx.name + ".txt");

尽管当多个客户的名称相同时,这可能会引起问题,因此您必须解决该问题。建议:也许包括一个ID字段?