gpt4 book ai didi

java - 如何将对象分解为 byte[]?

转载 作者:太空宇宙 更新时间:2023-11-03 13:05:06 25 4
gpt4 key购买 nike

我如何打破一个对象——更具体地说是一个Parcelable;实际上它是一个包,但重点是一样的——变成一个字节[]?我认为我这样做的方式是一个很好的解决方案,但显然我错了。

仅供引用,这是我以前的做法。

public static byte[] getBytes(Object obj) throws java.io.IOException {
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(obj);
oos.flush();
oos.close();
bos.close();
byte[] data = bos.toByteArray();
return data;
}

谢谢~Aedon

编辑 1::

像这样将一个 Bundle 传递给它来破坏一个对象会导致 NotSerializableException。

最佳答案

您的代码看起来基本没问题。我建议如下:

public static byte[] getBytes(Serializable obj) throws IOException {
ByteArrayOutputStream bos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(bos);
oos.writeObject(obj);

byte[] data = bos.toByteArray();

oos.close();
return data;
}

关于java - 如何将对象分解为 byte[]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6052324/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com