Arquivos Binários

1 resposta
J

import java.io.;
import javax.swing.
;

class Empregado {

String nome;

String cargo;

int matricula;

double salario;

Endereco end_res;

}

class Endereco {

String rua;

int numero;

String cidade;

String estado;

}
public class Emp {

static String arquivo=cadastros.dat;

public static void main(String args[]) {

try {

RandomAccessFile cadastro = null; //declaração

cadastro = new RandomAccessFile(new File(arquivo), rw);

Empregado emp = new Empregado();

emp.matricula=Integer.parseInt(JOptionPane.showInputDialog(Matrícula));

emp.nome=JOptionPane.showInputDialog(Nome);

emp.cargo=JOptionPane.showInputDialog(Cargo);

emp.salario=Double.parseDouble(JOptionPane.showInputDialog(Salário));

emp.end_res.rua=JOptionPane.showInputDialog(Rua);

emp.end_res.numero=Integer.parseInt(JOptionPane.showInputDialog(Número));

emp.end_res.cidade=JOptionPane.showInputDialog(Cidade);

emp.end_res.estado=JOptionPane.showInputDialog(Estado);
cadastro.seek(cadastro.length()); 
       
       cadastro.writeInt(emp.matricula);
       cadastro.writeUTF(emp.nome);
       cadastro.writeUTF(emp.cargo);
       cadastro.writeDouble(emp.salario);
       cadastro.writeUTF(emp.end_res.rua);
       cadastro.writeInt(emp.end_res.numero);
       cadastro.writeUTF(emp.end_res.cidade);
       cadastro.writeUTF(emp.end_res.estado);
       
       
       cadastro.close();
   } catch (IOException e) {
       JOptionPane.showMessageDialog(null,"não possível abrir o arquivo");
   }

}
}

quando eu vou rodar, ele pede as informações certinhas até o “emp.end_res.rua=JOptionPane.showInputDialog(“Rua”);”, nessa se eu botar algo, ele vai dar o erro:

Exception in thread “main” java.lang.NullPointerException
at Emp.main(Emp.java:29)
Java Result: 1

o que fazer ?
obrigado.

1 Resposta

J

opa, descpbri o que tava errado, eh que esqueci de chamar o endereco end_res = new endereco(); na classe empregado.

Criado 16 de novembro de 2008
Ultima resposta 16 de nov. de 2008
Respostas 1
Participantes 1