Zapis działania programu

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.

0
        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();
            }
        });
0

dzięki

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

0

Pokaż co robisz w metodzie zapisz.

1

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

          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:

      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..

0
bogdans napisał(a):

Pokaż co robisz w metodzie zapisz.

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

0

Coś w rodzaju

            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);
            }
        
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

0 użytkowników online, w tym zalogowanych: 0, gości: 0