Deserializing an Object in java

Here, you will learn how to De-serialize the Java object. This means, converting the serialized object into in-memory java object.

Deserializing an Object in java



The opposite operation of the serialization is called deserialization i.e. to extract the data from a series of bytes is s known as deserialization which is also called inflating or unmarshalling.

The given program shows how to read any data or contents from the serialized object or file. It takes a file name and then converts into java object. If any exception occurs during reading the serialized file, it is caught in the catch block.

ObjectInputStream extends and  implements ObjectInput  interface. It deserializes objects, arrays, and other values from an input stream. Thus the constructor of  ObjectInputStream is written as:

ObjectInputStream obj = new ObjectInputStream(new FileInputStream(f));

Above code of the program creates the instance of the ObjectInputStream class to deserialize that file which had been serialized by the ObjectInputStream class. The above code creates the instance using the instance of the FileInputStream class which holds the specified file object which has to be deserialized because the ObjectInputStream() constructor needs the input stream.


Method readObject( ) reads the object and restore the state of the object. This is the method of the ObjectInputStream class that helps to traverse the object.

Here is a code of program :


  public class DeserializingObject{

  public static void main(String[] argsthrows IOException{
  BufferedReader in = new BufferedReader(new InputStreamReader(;
  System.out.print("Enter File name : ");
String file = in.readLine();
System.out.print("Enter extention : ");
String ext = in.readLine();
String filename = file + "." + ext;
File f = new File(filename);
ObjectInputStream obj = new ObjectInputStream(new FileInputStream(f));
  System.out.println("The text : "+  obj.readObject());
  System.out.println("Deserializing Operation Completly Successfully.");
catch(ClassNotFoundException e){
catch(FileNotFoundException fe){
System.out.println("File not found ");

Download this example.

Share on Google+Share on Google+

Deserializing an Object in java

Posted on: April 17, 2007 If you enjoyed this post then why not add us on Google+? Add us to your Circles



Discuss: Deserializing an Object in java   View All Comments

Post your Comment

Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
Saeed Ahmad
May 31, 2011

import*; public class SerializationDemo { public static void main(String args[]) { // Object serialization try { MyClass object1 = new MyClass("Hello", -7, 2.7e10); System.out.println("object1: " + object1); FileOutputStream fos = new FileOutputStream("serial"); ObjectOutputStream oos = new ObjectOutputStream(fos); oos.writeObject(object1); oos.flush(); oos.close(); } catch(Exception e) { System.out.println("Exception during serialization: " + e); System.exit(0); } // Object deserialization try { MyClass object2; FileInputStream fis = new FileInputStream("serial"); ObjectInputStream ois = new ObjectInputStream(fis); object2 = (MyClass)ois.readObject(); ois.close(); System.out.println("object2: " + object2); } catch(Exception e) { System.out.println("Exception during deserialization: " + e); System.exit(0); } } } class MyClass implements Serializable { String s; int i; double d; public MyClass(String s, int i, double d) { this.s = s; this.i = i; this.d = d; } public String toString() { return "s=" + s + "; i=" + i + "; d=" + d; } }
November 3, 2011
not clear

it will an more notes
January 26, 2012
File not found error

Hi I am tryin to run this example but getting the above error. I have tried to put file in the same folder where code is but still not working. Any help please.
January 4, 2013