Aplikacja nie odczytuje danych

0

Zrobiłem prostą aplikację, wzorując się na książce komputer świat experta. Aplikacja ta, nie chce odczytać danych z zapisanego pliku. Robię ją w NetBeans. Proszę o pomoc.

Kod aplikacji:

/*
 * pliki.java
 */

package pliki;

import java.awt.*;
import java.awt.event.*;
import java.awt.event.ActionEvent;
import java.io.*;
import javax.swing.*;


public class pliki {
    public static void main(String[] args) {

        Okno okno=new Okno();
        okno.setSize(300,190);
        okno.setTitle("Zapis obiektu");
        okno.setDefaultCloseOperation(3);
        okno.setVisible(true);
    }
}

class Okno extends JFrame implements ActionListener{
    JTextField pole,pole1,pole2,pole3;
    Bron bron;
    JTextArea area,area1,area2,area3;
    public Okno (){
        JPanel panel=new JPanel();
        panel.setBackground(new Color(34,145,255));
        JLabel etykieta=new JLabel("Nazwa pliku:");
        pole=new JTextField(15);
        panel.add(etykieta);
        panel.add(pole);

        JLabel etykieta1=new JLabel("Nazwa broni:");
        area=new JTextArea(1,15);
        panel.add(etykieta1);
        panel.add(area);
        JLabel etykieta2=new JLabel("Amunicja:");
        area1=new JTextArea(1,15);
        panel.add(etykieta2);
        panel.add(area1);
        JLabel etykieta3=new JLabel("Mozliwość doczepienia akcesoriów (szyna):");
        area2=new JTextArea(1,15);
        panel.add(etykieta3);
        panel.add(area2);

                JButton przycisk=new JButton("Zapisz informacje");
                JButton przycisk2=new JButton("Odczytaj informacje");
                przycisk.addActionListener(this);
                przycisk2.addActionListener(this);
                panel.add(przycisk);
                panel.add(przycisk2);
                getContentPane().add(panel);
    }

    public void actionPerformed(ActionEvent e) {
        String nazwa=pole.getText();
        String nazwaBroni=area.getText();
        String amunicja=area1.getText();
        String dodatki=area2.getText();
        bron=new Bron(nazwaBroni, amunicja, dodatki);
        try{
            ObjectOutputStream oos=new ObjectOutputStream(new FileOutputStream(nazwa));
             oos.writeObject(bron);
             oos.flush();
             oos.close();
          }
        catch (Exception ek){Okno okno=new Okno();
        okno.setSize(300,190);
        okno.setTitle("BŁĄD!!!!");
        okno.setDefaultCloseOperation(3);
        okno.setVisible(true);}


    try {
ObjectInputStream ois=new ObjectInputStream(new FileInputStream(nazwa));
bron=(Bron) ois.readObject();
area.append(bron.getnazwaBroni());
area1.append(bron.getamunicja());
area2.append(bron.getdodatki());
ois.close();
}catch(Exception ek){Okno okno=new Okno();
        okno.setSize(300,190);
        okno.setTitle("BŁĄD!!!!");
        okno.setDefaultCloseOperation(3);
        okno.setVisible(true);}
    }
}
class Bron implements Serializable {
        String nazwaBroni;
        String amunicja;
        String dodatki;
    public Bron(String n,String s,String m){
        nazwaBroni=n;
        amunicja=s;
        dodatki=m;
    }


    public String getnazwaBroni(){ return nazwaBroni; }
    public String getamunicja(){ return amunicja; }
    public String getdodatki(){ return dodatki; }


}
0

import java.awt.;
import java.awt.event.
;
import java.awt.event.ActionEvent;
import java.io.;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.
;

public class pliki {

public static void main(String[] args) {

    Okno okno = new Okno();
    okno.setSize(300, 190);
    okno.setTitle("Zapis obiektu");
    okno.setDefaultCloseOperation(3);
    okno.setVisible(true);
}

}

class Okno extends JFrame implements ActionListener {

JTextField pole, pole1, pole2, pole3;
Bron bron;
JTextArea area, area1, area2, area3;
ObjectOutputStream oos = null;

public Okno() {
    JPanel panel = new JPanel();
    panel.setBackground(new Color(34, 145, 255));
    JLabel etykieta = new JLabel("Nazwa pliku:");
    pole = new JTextField(15);
    panel.add(etykieta);
    panel.add(pole);

    JLabel etykieta1 = new JLabel("Nazwa broni:");
    area = new JTextArea(1, 15);
    panel.add(etykieta1);
    panel.add(area);
    JLabel etykieta2 = new JLabel("Amunicja:");
    area1 = new JTextArea(1, 15);
    panel.add(etykieta2);
    panel.add(area1);
    JLabel etykieta3 = new JLabel("Mozliwość doczepienia akcesoriów (szyna):");
    area2 = new JTextArea(1, 15);
    panel.add(etykieta3);
    panel.add(area2);

    JButton przycisk = new JButton("Zapisz informacje");
    JButton przycisk2 = new JButton("Odczytaj informacje");

    przycisk.addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e) {
            try {
                String nazwa = pole.getText();
                String nazwaBroni = area.getText();
                String amunicja = area1.getText();
                String dodatki = area2.getText();
                bron = new Bron(nazwaBroni, amunicja, dodatki);
                oos = new ObjectOutputStream(new FileOutputStream(nazwa));
                oos.writeObject(bron);
                oos.flush();
                oos.close();
            } catch (IOException ex) {
                Logger.getLogger(Okno.class.getName()).log(Level.SEVERE, null, ex);


                Okno okno = new Okno();
                okno.setSize(300, 190);
                okno.setTitle("BŁĄD!!!!");
                okno.setDefaultCloseOperation(3);
                okno.setVisible(true);
            }
        }
    });
    przycisk2.addActionListener(new ActionListener() {

        public void actionPerformed(ActionEvent e) {
            try {
                String nazwa = pole.getText();
                ObjectInputStream ois = new ObjectInputStream(new FileInputStream(nazwa));
                bron = (Bron) ois.readObject();
                area.append(bron.getnazwaBroni());
                area1.append(bron.getamunicja());
                area2.append(bron.getdodatki());
                ois.close();
            } catch (Exception ek) {
                Okno okno = new Okno();
                okno.setSize(300, 190);
                okno.setTitle("BŁĄD!!!!");
                okno.setDefaultCloseOperation(3);
                okno.setVisible(true);
            }
        }
    });
    panel.add(przycisk);
    panel.add(przycisk2);
    getContentPane().add(panel);
}

public void actionPerformed(ActionEvent e) {
}

}

class Bron implements Serializable {

String nazwaBroni;
String amunicja;
String dodatki;

public Bron(String n, String s, String m) {
    nazwaBroni = n;
    amunicja = s;
    dodatki = m;
}

public String getnazwaBroni() {
    return nazwaBroni;
}

public String getamunicja() {
    return amunicja;
}

public String getdodatki() {
    return dodatki;
}

}

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