Ich habe ein TableView erstellt, mit dem der Benutzer Informationen in die Tabelle eingeben kann. Das Problem, das ich habe, ist, dass ich die Informationen speichern muss, die der Benutzer zur Verfügung gestellt hat, und die gleiche Tabelle mit denselben Informationen neu laden, wenn das Programm das nächste Mal ausgeführt wird. Ich bin seit einiger Zeit daran fest, wenn jemand helfen kann, würde ich es sehr schätzen. UNTEN ist meine ObservableList und die Methoden, die ich ausprobiert habe. Ich werde eine Bildschirmaufnahme von dem, was die Tabelle aussieht, einschließen. Ich rief die Methoden von Button Pushs an, die der Benutzer machen würde.So speichern/laden Sie Daten aus TableView in JavaFX
//get Trail info
public static ObservableList<Stats> getTrailInfo(){
ObservableList<Stats> trailInfo = FXCollections.observableArrayList();
trailInfo.add(new Stats(trailList, timesHiked, daysHiked, hoursHiked, minutesHiked, milesHiked));
return trailInfo;
}
//I ATTEMPTED TO SAVE AND READ IT BACK USING THESE METHODS, BUT I DID NOT HAVE ANY LUCK
private static void write(ObservableList<Stats> stats) {
try {
// write object to file
OutputStream out = new FileOutputStream("TrailName.txt");
ObjectOutputStream oos = new ObjectOutputStream(out);
oos.writeObject(new ArrayList<Stats>(stats));
oos.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
static ObservableList<Stats> pull() {
try {
InputStream inputstream = new FileInputStream("TrailName.txt");
ObjectInputStream ois = new ObjectInputStream(inputstream);
List<Stats> list = (List<Stats>) ois.readObject() ;
return FXCollections.observableList(list);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return FXCollections.emptyObservableList();
}
[TableView ScreenShot][1]
[1]: https://i.stack.imgur.com/m0nyg.png
Ich bin mir nicht sicher, ob es serialisierbar TBH sein sollte. Ich habe mehrere Dinge ausprobiert und sie haben nicht funktioniert, das war das letzte, was ich an einem anderen Beispiel versuchte. Aus welchen Gründen auch immer kann ich online keine Beispiele finden, wie man das Tableview und seine Daten speichert und dann neu lädt. – user8284691