/
shabil
/
project
Обзор
Документация
Войти
/
shabil
/
project
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/main/java/com/example/notes/NotesController.java
61 строка
2 KB
shabil
код Сони
27 июн 2024, 07:37
27 июн 2024, 07:37
e6a969c
Код
Авторство
О чём код?
package com.example.notes; import javafx.application.Platform; import javafx.fxml.FXML; import javafx.scene.control.DatePicker; import javafx.scene.control.TextArea; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.time.LocalDate; import java.util.HashMap; import java.util.Map; public class NotesController { @FXML private DatePicker picker; @FXML private TextArea notes; private Map<LocalDate, String> data = new HashMap<>(); public void initialize(){ load(); picker.valueProperty().addListener((o, OldDate, selectedDate) -> { notes.setText(data.getOrDefault(selectedDate, "")); }); picker.setValue(LocalDate.now()); } public void updateNotes(){ data.put(picker.getValue(), notes.getText()); } private void save(){ try (ObjectOutputStream stream = new ObjectOutputStream(Files.newOutputStream(Paths.get("notes.data")))){ stream.writeObject(data); System.out.println("Сохранено!"); } catch (Exception e){ System.out.println("Не удалось сохранить" + e); } } public void exit(){ save(); Platform.exit(); } private void load(){ Path file = Paths.get("notes.data"); if (Files.exists(file)){ try (ObjectInputStream stream = new ObjectInputStream(Files.newInputStream(file))){ data = (Map<LocalDate, String>) stream.readObject(); System.out.println("Нагруженный"); }catch (Exception e){ System.out.println("Не удалось загрузить"); } } } }