package com.github.donkirkby.vograbulary;
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 SerializableTools {
public static <T extends Serializable> byte[] serialize(T obj)
throws IOException {
ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
ObjectOutputStream objectStream = new ObjectOutputStream(byteStream);
objectStream.writeObject(obj);
objectStream.close();
return byteStream.toByteArray();
}
public static <T extends Serializable> T deserialize(
byte[] bytes,
Class<T> clazz)
throws IOException, ClassNotFoundException {
ByteArrayInputStream byteStream = new ByteArrayInputStream(bytes);
ObjectInputStream objectStream = new ObjectInputStream(byteStream);
Object obj = objectStream.readObject();
return clazz.cast(obj);
}
}