Controlling serialization by adding your own writeObject() and readObject() methods : Java examples (example source code) » File Input Output » Data Input Output

Java
C++
Java Products
Java Articles
Java Home  »   File Input Output   » [  Data Input Output  ]  Screenshots 
 



Controlling serialization by adding your own writeObject() and readObject() methods



// : c12:SerialCtl.java
// Controlling serialization by adding your own
// writeObject() and readObject() methods.
// From 'Thinking in Java, 3rd ed.' (c) Bruce Eckel 2002
// www.BruceEckel.com. See copyright notice in CopyRight.txt.

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;

public class SerialCtl implements Serializable {
  private String a;

  private transient String b;

  public SerialCtl(String aa, String bb) {
    a = "Not Transient: " + aa;
    b = "Transient: " + bb;
  }

  public String toString() {
    return a + "\n" + b;
  }

  private void writeObject(ObjectOutputStream streamthrows IOException {
    stream.defaultWriteObject();
    stream.writeObject(b);
  }

  private void readObject(ObjectInputStream streamthrows IOException,
      ClassNotFoundException {
    stream.defaultReadObject();
    b = (Stringstream.readObject();
  }

  public static void main(String[] argsthrows IOException,
      ClassNotFoundException {
    SerialCtl sc = new SerialCtl("Test1""Test2");
    System.out.println("Before:\n" + sc);
    ByteArrayOutputStream buf = new ByteArrayOutputStream();
    ObjectOutputStream o = new ObjectOutputStream(buf);
    o.writeObject(sc);
    // Now get it back:
    ObjectInputStream in = new ObjectInputStream(new ByteArrayInputStream(
        buf.toByteArray()));
    SerialCtl sc2 = (SerialCtlin.readObject();
    System.out.println("After:\n" + sc2);
  }
///:~
Related examples in the same category
1.  Data IO Test 2 Data IO Test 2
2.  Data IO Demo Data IO Demo
3.  Data IO Test Data IO Test
4.  Typical I/O stream configurations
5.  ProgressMonitorInputStream Demo
6.  IO demo: DataOutputStream and DataInputStream
7.  Some simple file I-O primitives reimplemented in Java
8.  ScanStreamTok - show scanning a file with StringTokenizer
9.  Write some data in binary
10.  Using transferTo() between channels
11.  Read Write Lock Test Read Write Lock Test








Home| Contact Us
Copyright 2003 - 04 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.