Zapis działania programu

Zapis działania programu
M9
  • Rejestracja:ponad 9 lat
  • Ostatnio:prawie 9 lat
  • Postów:63
0

Witam,

W jaki sposób w Jave zrobić zapis działania programu po kliknięciu X. Np. Wprowadzam w danym oknie dane, do tabeli, klikam X tego okna i chce zapisać te dane w oknie. Następnie jak otworze okno żeby te dane były wyświetlone.

bogdans
Moderator
  • Rejestracja:prawie 17 lat
  • Ostatnio:prawie 5 lat
0
Kopiuj
        setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
        addWindowListener(new WindowAdapter()
        {
            public void windowClosing(WindowEvent we)
            {
                zapisz();
                System.exit(0);
                //lub - jeżeli zamykane jest ostatnie (jedyne) okno programu
                dispose();
            }
        });

To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell
M9
  • Rejestracja:ponad 9 lat
  • Ostatnio:prawie 9 lat
  • Postów:63
0

dzięki

M9
  • Rejestracja:ponad 9 lat
  • Ostatnio:prawie 9 lat
  • Postów:63
0

Niestety nie działa, zawiesza sie okno, nie zamyka sie w ogóle, muszę zamknąć kompilator, jak usunę ten kod to normalnie zamyka, nie wiem o co chodzi

bogdans
Moderator
  • Rejestracja:prawie 17 lat
  • Ostatnio:prawie 5 lat
0

Pokaż co robisz w metodzie zapisz.


To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell
A6
  • Rejestracja:ponad 9 lat
  • Ostatnio:ponad 9 lat
  • Lokalizacja:Bydgoszcz
  • Postów:1
1

jak chcesz coś zapisać to możesz np. tak:

Kopiuj
          public void zapisz(){
            FileOutputStream fos;
            String text;
            byte barr[];
            text=jTextArea1.getText();
            barr=text.getBytes();
            try{
                fos=new FileOutputStream("NAZWA_PLIKU.txt");
                fos.write(barr);
                fos.close();
            }
            catch(Exception ex){
                System.out.println("Błąd [Error]: "+ex.toString());
            }
         }

Tu akurat dane z jTextArea.

A wczytać np. tak:

Kopiuj
      public void wczytaj(){
        FileInputStream fis;
        byte buf[];
        try {
            fis = new FileInputStream("NAZWA_PLIKU.txt");
            buf = new byte[fis.available()];
            fis.read(buf);
            String text;
            text = new String(buf);
            jTextArea1.setText(text);
            fis.close();
        } catch (Exception ex) {
            System.out.println("Błąd [Error]: "+ex.toString());
        }
}

Sposobów jest wiele..

M9
  • Rejestracja:ponad 9 lat
  • Ostatnio:prawie 9 lat
  • Postów:63
0
bogdans napisał(a):

Pokaż co robisz w metodzie zapisz.

Właśnie nie wiem co tutaj powinno być

bogdans
Moderator
  • Rejestracja:prawie 17 lat
  • Ostatnio:prawie 5 lat
0

Coś w rodzaju

Kopiuj
            try
            {
                FileOutputStream f = new FileOutputStream(nameOfFile);
                ObjectOutputStream str = new ObjectOutputStream(f);
                str.writeObject(table.getModel());
                str.flush();
                f.close();
            }
            catch(IOException e)
            {
                JOptionPane.showMessageDialog(lista,e.getMessage(),"Zapisywanie do pliku "+nameOfFile,JOptionPane.INFORMATION_MESSAGE);
            }
        

To smutne, że głupcy są tak pewni siebie, a ludzie mądrzy - tak pełni wątpliwości. Bertrand Russell
edytowany 1x, ostatnio: bogdans
M9
  • Rejestracja:ponad 9 lat
  • Ostatnio:prawie 9 lat
  • Postów:63
0

@bogdans
dzięki.. a później muszę to jakoś wczytać przy otwieraniu aplikacji? szukam w necie czegoś na ten temat, ale ciężko coś znaleźć, także jestem wdzięczny za każdą pomoc

edytowany 1x, ostatnio: Marekk94

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.