You are on page 1of 3

Serializarea

Serializarea binara
Clasa
public class Car implements Serializable {
public int id;
public String model;
public double maximumSpeed;
@Override
public String toString(){
return this.id+" "+this.model+" "+this.maximumSpeed;
}
}

Instantierea si serializarea binara


import java.io.*;
public class Main {
public static void main (String[] args){
Car c= new Car();
c.id = 10;
c.model = "Audi";
c.maximumSpeed=270.0;
FileOutputStream fos = new FileOutputStream("MyCar");
ObjectOutputStream ob = new ObjectOutputStream(fos);
ob.writeObject(c);
ob.flush();
}
}

Deserializarea
import java.io.*;
public class Main{
public static void main(String[] args){
FileInputStream fi = new FileInputStream("MyCar");
ObjectInputStream oi = new ObjectInputStream(fi);
Car c = (Car)oi.readObject();
System.out.println(c);
}
}

Serializarea textuala - XML


Clasa Car
public class Car{
private int id;
private String model;
private double maximumSpeed;
public void setId(int id){this.id = id;}
public int getId(){return this.id;}
public void setModel(String model) {this.model = model;}
public String getModel(){return this.model;}
public void setMaximumSpeed(double maximumSpeed){this.maximumSpeed=maxim
umSpeed;}
public double getMaximumSpeed(){return this.maximumSpeed;}
@Override
public String toString(){return this.id+" "+this.model+" "+this.maximumS
peed;}
}

Serializarea Textuala
import java.beans.XMLEncoder;
import java.io.*;
public class Main{
public static void main(String[] args){
Car c = new Car();
c.setId=(10);
c.setModel("Audi");
c.setMaximumSpeed(270.0);
FileOutputStream fos = new FileOutputStream("MyCar");
XMLEncoder s = new XMLEncoder(fos);
s.writeObject(c);
s.flush();
}
}

Deserializarea Textuala
FileInputStream fi = new FileInputStream("MyCar");
XMLDecoder objln = new XMLDecoder(fi);
Car c = (Car)objln.readObject();
System.out.println(c);

Exemplu amplu
Class User
public class User{
private int id;
private String email;
private String password;
public void setId(int id){this.id=id;}
public int getId(){return this.id;}
public void setEmail(String email){this.email=email;}
public String getEmail(){return this.email;}
public void setPassword(String password){this.password = password;}
public String getPassword(){return this.password;}
@Override toString
...
public void serializeXML(String xmlFile) throws FileNotFoundException{
FileOutputStream fos = new FileOutputStream(xmlFile);
XMLEncoder s = new XMLEncoder(fos);
s.writeObject(this); <- se refera la tot obiectul nu la
un anumit camp
s.close();
}
public static User deserializeXML(String file) throws FileNotFoundExcept
ion{
FileInputStream fis = new FileInputStream(file);
XMLDecoder objln = new XMLDecoder(fis);
User u = (User)objln.readObject();
return u;
}
}
Serializarea
public class Main {
public static void main (String[] args){
User u = new User();
u.setId(5);
u.setMail("ionescuionel@yahoo.com");
u.setPassword("123");
u.serializeXML("myXml.xml");
}
}
Deserializarea
User u = User.deserializeXML("myXml.xml");
System.out.println(u);

You might also like