如何在Java里将对象转换为字节数组?
将对象转换为字节数组
- 通过实现Serializable接口,使所需的对象可序列化。
- 创建一个ByteArrayOutputStream对象。
- 通过传递上一步中创建的ByteArrayOutputStream对象,创建一个ObjectOutputStream对象。
- 使用ObjectOutputStream类的writeObject()方法,将对象的内容写入输出流。
- 使用flush()方法将内容刷新到流中。
- 最后,使用toByteArray()方法将ByteArrayOutputStream的内容转换为字节数组。
示例
import java.io.ByteArrayOutputStream; import java.io.ObjectOutputStream; import java.io.Serializable; class Sample implements Serializable { public void display() { System.out.println("This is a sample class"); } } public class ObjectToByteArray { public static void main(String args[]) throws Exception { Sample obj = new Sample(); ByteArrayOutputStream bos = new ByteArrayOutputStream(); ObjectOutputStream oos = new ObjectOutputStream(bos); oos.writeObject(obj); oos.flush(); byte [] data = bos.toByteArray(); } }
广告