我正在用java创建酒店预订系统。当我退出程序时,它不保留我以前输入的信息。有关如何解决此问题的任何建议?非常感谢。以Java保存信息
代码:
//Creates a method that saves the data in a file
public void save(String filePath) {
try {
FileOutputStream fos = new FileOutputStream(filePath);
ObjectOutputStream out = new ObjectOutputStream(fos);
out.writeObject(this);
out.close();
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
//Creates a method that loads the data from the file
public void load(String filePath) {
try {
FileInputStream fis = new FileInputStream(filePath);
ObjectInputStream in = new ObjectInputStream(fis);
ToSave save = (ToSave)in.readObject();
this.setGuests(save.getGuests());
this.setReservations(save.getReservations());
this.setRooms(save.getRooms());
in.close();
fis.close();
} catch (Exception e) {
e.printStackTrace();
}
}
字符串FILE_PATH = “HotelReservationSystem.hrs”;
if(clicker == save) {
ToSave save = new ToSave();
save.setGuests(Global.guests);
save.setReservations(Global.reservations);
save.setRooms(Global.rooms);
save.save(FILE_PATH);
}
if(clicker == load) {
ToSave save = new ToSave();
save.load(FILE_PATH);
Global.guests = save.getGuests();
Global.reservations = save.getReservations();
Global.rooms = save.getRooms();
}
所以输入工作正常,但保留获取错误信息? – dan
您想在程序开始时加载您的信息。程序退出时,内存中不会保存任何内容。 – Joe
当我还在程序中时,它会保存信息。但是,当我再次打开并搜索客人时,该文件为空。 – user3212307