PuPax Posted December 10, 2009 at 10:12 PM Report Share #299726 Posted December 10, 2009 at 10:12 PM Boas... Estou tendo um problema ao guardar um objecto (arraylist) num ficheiro de texto. Tenho a seguinte classe: public class Pessoa { .... } public class Cliente extends Pessoa { .... } Sei que a classe Cliente tem que ser Serializable (implements Serializable), porém já testei e ele continua a dar erro dizendo que a classe nao é serializable. Como poderei fazer? Cumprimentos. Link to comment Share on other sites More sharing options...
Baderous Posted December 10, 2009 at 10:22 PM Report Share #299729 Posted December 10, 2009 at 10:22 PM Pessoa também tem de ser Serializable, penso eu. Link to comment Share on other sites More sharing options...
PuPax Posted December 10, 2009 at 10:32 PM Author Report Share #299733 Posted December 10, 2009 at 10:32 PM Criei... public class Pessoa implements Serializable { .... } public class Client extends Pessoa implements Serializable { .... } Continua a dizer a mesma coisa.:S Link to comment Share on other sites More sharing options...
magician Posted December 11, 2009 at 01:09 AM Report Share #299757 Posted December 11, 2009 at 01:09 AM Possivelmente o erro deve de vir de alguma objecto que está dentro da Pessoa ou o Client que não é serializable, é que todas as propriedades do Objecto deve ser também serializable I haven’t lost my mind; it’s backed up on DVD somewhere! Link to comment Share on other sites More sharing options...
PuPax Posted December 12, 2009 at 01:58 PM Author Report Share #300013 Posted December 12, 2009 at 01:58 PM As classes estão definidas da seguinte maneira: public class Pessoa implements Serializable{ private String nome; private String morada; private int tlf; private String obs; public Pessoa() { this.nome = ""; this.morada = ""; this.tlf = 0; this.obs = ""; } public Pessoa(String nome, String morada, int tlf, String obs) { this.nome = nome; this.morada = morada; this.tlf = tlf; this.obs = obs; } public String getNome(){return nome;} public String getMorada(){return morada;} public int getTlf(){return tlf;} public String getObs(){return obs;} public void setNome(String nome){this.nome = nome;} public void setMorada(String morada){this.morada = morada;} public void setTlf(int tlf){this.tlf = tlf;} public void setObs(String obs){this.obs = obs;} } public class Cliente extends Pessoa implements Serializable{ /** * */ private static final long serialVersionUID = 1L; private String n_cliente; public Cliente() { super("", "", 0, ""); this.n_cliente = ""; } public Cliente(String nome, String morada, int tlf, String obs, String n_cliente) { super(nome, morada, tlf, obs); this.n_cliente = n_cliente; } public String getN_cliente() {return n_cliente;} public void setN_cliente(String n_cliente) {this.n_cliente = n_cliente;} } Link to comment Share on other sites More sharing options...
Baderous Posted December 12, 2009 at 03:16 PM Report Share #300019 Posted December 12, 2009 at 03:16 PM Falta-te o: import java.io.*; Link to comment Share on other sites More sharing options...
PuPax Posted December 12, 2009 at 03:41 PM Author Report Share #300024 Posted December 12, 2009 at 03:41 PM Eu não coloquei aqui os import's mas eles estão lá... Link to comment Share on other sites More sharing options...
Baderous Posted December 12, 2009 at 04:15 PM Report Share #300036 Posted December 12, 2009 at 04:15 PM Então qual é o erro? Dá erro na compilação ou durante a execução? Link to comment Share on other sites More sharing options...
caracol_mix Posted December 22, 2009 at 09:04 PM Report Share #301909 Posted December 22, 2009 at 09:04 PM Puxas olha la onde é k tens a parte do codigo k faz guardar no ficheiro???pelo que vi tens o que é preciso para guardar os dados no ficheiro mas falta ver a parte docodigo onde escreves no ficheiro basta fazeres algo dogenero : try { ObjectOutputStream fin = new ObjectOutputStream(new FileOutputStream("C:/pessoa")); fin.writeObject(ArrayList_Que_queres_guardar); fin.close(); } catch (IOException fin) { } } Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now