com.ijchart.xychart.util
Class SerialUtil

java.lang.Object
  extended by com.ijchart.xychart.util.SerialUtil

public abstract class SerialUtil
extends java.lang.Object

Title: IJChart

Description: a chart library for the Java(tm) platform.

序列化工具类,有些Java标准库里的类没有实现java.io.Serializable接口,所有不能直接序列化,需要使用此类来序 列化

Copyright: Copyright (c) 2013

Company:

Version:
1.0
Author:
zhang feng min,shanghai china. Contract me by email.

Constructor Summary
SerialUtil()
           
 
Method Summary
static boolean isSerializable(java.lang.Class c)
          如果一个类实现了Serializable接口返回true,否则返回false
static java.text.AttributedString readAttributedString(java.io.ObjectInputStream stream)
          读取方法writeAttributedString(AttributedString,ObjectOutputStream)序列化的 AttributedString对象
static java.util.Hashtable readHashtablePaint(java.io.ObjectInputStream stream)
          读取一个hashtable的paint对象.
static java.util.Hashtable readHashtableStroke(java.io.ObjectInputStream stream)
          读取一个hashtable的stroke对象.
static java.awt.Image readImage(java.io.ObjectInputStream stream)
          读取方法writeImage(ObjectOutputStream,Image)序列化的Image对象
static java.awt.Paint readPaint(java.io.ObjectInputStream stream)
          读取方法writePaint(ObjectOutputStream,Paint)序列化的Paint对象
static java.util.Map readPaintMap(java.io.ObjectInputStream in)
          从输入流中读取Map,Map的每个元素为(Object,Paint).
static java.awt.geom.Point2D readPoint2D(java.io.ObjectInputStream stream)
          读取方法writePoint2D(ObjectOutputStream,Point2D)序列化的Point2D对象
static java.awt.Shape readShape(java.io.ObjectInputStream stream)
          读取方法writeShape(ObjectOutputStream,Shape)序列化的Shape对象
static java.awt.Stroke readStroke(java.io.ObjectInputStream stream)
          读取方法writeStroke(ObjectOutputStream,Stroke)序列化的Stroke对象
static void writeAttributedString(java.text.AttributedString as, java.io.ObjectOutputStream stream)
          序列化AttributedString对象
static void writeHashtablePaint(java.io.ObjectOutputStream stream, java.util.Hashtable paints)
          写hashtable的paint对象.
static void writeHashtableStroke(java.io.ObjectOutputStream stream, java.util.Hashtable strokes)
          写hashtable的stroke对象.
static void writeImage(java.io.ObjectOutputStream stream, java.awt.Image image)
          序列化图片对象
static void writePaint(java.io.ObjectOutputStream stream, java.awt.Paint paint)
          序列化Paint对象
static void writePaintMap(java.io.ObjectOutputStream out, java.util.Map map)
          写Map对象到输出流中,Map的每个元素为(Object,Paint).
static void writePoint2D(java.io.ObjectOutputStream stream, java.awt.geom.Point2D point)
          序列化Point2D对象
static void writeShape(java.io.ObjectOutputStream stream, java.awt.Shape shape)
          序列化Shape对象
static void writeStroke(java.io.ObjectOutputStream stream, java.awt.Stroke stroke)
          序列化Stroke对象,此处只处理Stroke的JDK缺省实现类BasicStroke
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SerialUtil

public SerialUtil()
Method Detail

isSerializable

public static boolean isSerializable(java.lang.Class c)
如果一个类实现了Serializable接口返回true,否则返回false

Parameters:
c - the class.
Returns:
A boolean.

readPaint

public static java.awt.Paint readPaint(java.io.ObjectInputStream stream)
                                throws java.io.IOException,
                                       java.lang.ClassNotFoundException
读取方法writePaint(ObjectOutputStream,Paint)序列化的Paint对象

Parameters:
stream - ObjectOutputStream ObjectInputStream对象(不可为null)
Returns:
The paint object (possibly null).
Throws:
java.io.IOException - if there is an I/O problem.
java.lang.ClassNotFoundException - if there is a problem loading a class.

writePaint

public static void writePaint(java.io.ObjectOutputStream stream,
                              java.awt.Paint paint)
                       throws java.io.IOException
序列化Paint对象

Parameters:
stream - ObjectOutputStream 输出流对象(不可为null)
paint - Paint 对象(可为null)
Throws:
java.io.IOException - if there is an I/O error.

readStroke

public static java.awt.Stroke readStroke(java.io.ObjectInputStream stream)
                                  throws java.io.IOException,
                                         java.lang.ClassNotFoundException
读取方法writeStroke(ObjectOutputStream,Stroke)序列化的Stroke对象

Parameters:
stream - ObjectOutputStream 输入流(不可为null)
Returns:
Stroke Stroke对象 (可为null).
Throws:
java.io.IOException - if there is an I/O problem.
java.lang.ClassNotFoundException - if there is a problem loading a class.

writeStroke

public static void writeStroke(java.io.ObjectOutputStream stream,
                               java.awt.Stroke stroke)
                        throws java.io.IOException
序列化Stroke对象,此处只处理Stroke的JDK缺省实现类BasicStroke

Parameters:
stream - ObjectOutputStream 输出流(不可为null)
stroke - Stroke对象(可为null)
Throws:
java.io.IOException - if there is an I/O error.

readShape

public static java.awt.Shape readShape(java.io.ObjectInputStream stream)
                                throws java.io.IOException,
                                       java.lang.ClassNotFoundException
读取方法writeShape(ObjectOutputStream,Shape)序列化的Shape对象

Parameters:
stream - ObjectOutputStream 输入流(不可为null)
Returns:
Shape对象 (可为null)
Throws:
java.io.IOException - 如果有IO错误
java.lang.ClassNotFoundException - 如果加载类错误

writeShape

public static void writeShape(java.io.ObjectOutputStream stream,
                              java.awt.Shape shape)
                       throws java.io.IOException
序列化Shape对象

Parameters:
stream - ObjectOutputStream 输出流 (不可为null)
shape - 需要序列化的对象
Throws:
java.io.IOException - if there is an I/O error.

readPoint2D

public static java.awt.geom.Point2D readPoint2D(java.io.ObjectInputStream stream)
                                         throws java.io.IOException
读取方法writePoint2D(ObjectOutputStream,Point2D)序列化的Point2D对象

Parameters:
stream - ObjectOutputStream 输入流 (不可为null)
Returns:
Point2D对象
Throws:
java.io.IOException - if there is an I/O problem.

writePoint2D

public static void writePoint2D(java.io.ObjectOutputStream stream,
                                java.awt.geom.Point2D point)
                         throws java.io.IOException
序列化Point2D对象

Parameters:
stream - ObjectOutputStream 输出流 (不可为null)
point - Point2D对象 (可为null)
Throws:
java.io.IOException - if there is an I/O error.

readAttributedString

public static java.text.AttributedString readAttributedString(java.io.ObjectInputStream stream)
                                                       throws java.io.IOException,
                                                              java.lang.ClassNotFoundException
读取方法writeAttributedString(AttributedString,ObjectOutputStream)序列化的 AttributedString对象

Parameters:
stream - ObjectOutputStream 输入流 (不可为null)
Returns:
AttributedString对象(可能为null)
Throws:
java.io.IOException - 如果出现IO异常
java.lang.ClassNotFoundException - if there is a problem loading a class

writeAttributedString

public static void writeAttributedString(java.text.AttributedString as,
                                         java.io.ObjectOutputStream stream)
                                  throws java.io.IOException
序列化AttributedString对象

Parameters:
as - AttributedString对象 (可为null)
stream - ObjectOutputStream 输出流 (不可为null)
Throws:
java.io.IOException - if there is an I/O error.

readPaintMap

public static java.util.Map readPaintMap(java.io.ObjectInputStream in)
                                  throws java.io.IOException,
                                         java.lang.ClassNotFoundException
从输入流中读取Map,Map的每个元素为(Object,Paint).

Parameters:
in - 输入流.
Returns:
The map.
Throws:
java.io.IOException
java.lang.ClassNotFoundException

writePaintMap

public static void writePaintMap(java.io.ObjectOutputStream out,
                                 java.util.Map map)
                          throws java.io.IOException
写Map对象到输出流中,Map的每个元素为(Object,Paint).

Parameters:
out - 输出流.
map - Map对象,Map的每个元素为(Object,Paint) (可为null).
Throws:
java.io.IOException

writeHashtablePaint

public static void writeHashtablePaint(java.io.ObjectOutputStream stream,
                                       java.util.Hashtable paints)
                                throws java.io.IOException
写hashtable的paint对象.

Parameters:
stream - ObjectOutputStream
paints - Hashtable paint对象的hashtable (可为null).
Throws:
java.io.IOException

readHashtablePaint

public static java.util.Hashtable readHashtablePaint(java.io.ObjectInputStream stream)
                                              throws java.io.IOException,
                                                     java.lang.ClassNotFoundException
读取一个hashtable的paint对象.

Parameters:
stream - ObjectInputStream
Returns:
Hashtable
Throws:
java.io.IOException
java.lang.ClassNotFoundException

writeHashtableStroke

public static void writeHashtableStroke(java.io.ObjectOutputStream stream,
                                        java.util.Hashtable strokes)
                                 throws java.io.IOException
写hashtable的stroke对象.

Parameters:
stream - ObjectOutputStream
strokes - Hashtable
Throws:
java.io.IOException

readHashtableStroke

public static java.util.Hashtable readHashtableStroke(java.io.ObjectInputStream stream)
                                               throws java.io.IOException,
                                                      java.lang.ClassNotFoundException
读取一个hashtable的stroke对象.

Parameters:
stream - ObjectInputStream
Returns:
Hashtable
Throws:
java.io.IOException
java.lang.ClassNotFoundException

writeImage

public static void writeImage(java.io.ObjectOutputStream stream,
                              java.awt.Image image)
                       throws java.io.IOException
序列化图片对象

Parameters:
stream - ObjectOutputStream 输出流对象(不可为null)
image - Image Image对象(可为null)
Throws:
java.io.IOException - if there is an I/O error.

readImage

public static java.awt.Image readImage(java.io.ObjectInputStream stream)
                                throws java.io.IOException,
                                       java.lang.ClassNotFoundException
读取方法writeImage(ObjectOutputStream,Image)序列化的Image对象

Parameters:
stream - ObjectOutputStream ObjectInputStream对象(不可为null)
Returns:
The image object (possibly null).
Throws:
java.io.IOException - if there is an I/O problem.
java.lang.ClassNotFoundException - if there is a problem loading a class.