在java中将对象集合转换为字节格式,反之亦然

发布于 2024-11-02 15:17:22 字数 140 浏览 0 评论 0原文

我有一个对象集合,我需要以字节格式存储,然后我必须将字节数据转换回对象集合。我需要java中的答案。 例如,我有一个对象数组(任何类型),然后我必须将该数组转换为 java 中的字节数组,然后反之亦然。

如果可能,请建议我使用的集合以及支持它的方法。

I have a collection of objects which i need to store in byte format and then afterwards i have to convert the data which in bytes back into collection of objects.I need the answer in java.
For eg I have an array of objects(any type) then i have to convert this array to byte array in java and then vice versa.

Please if possible suggest me the collection to use and the methods which support it.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

北城挽邺 2024-11-09 15:17:22

假设 Foo 实现了 Serialized,只需这样做

List<Foo> list = createItSomehow();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(baos);

try {
    oos.writeObject(list);
} finally {
    oos.close();
}

byte[] bytes = baos.toByteArray();
// ...

,反之亦然:

ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
ObjectInputStream ois = new ObjectInputStream(bais);
List<Foo> list = null;

try {
    list = (List<Foo>) ois.readObject();
} finally {
    ois.close();
}

// ...

您当然也可以提供 FileOutputStream,而不是 ByteArrayOutputStreamByteArrayInputStreamFileInputStream 分别将其写入文件或从文件读取。

另请参阅:

Assuming that Foo implements Serializable, just do

List<Foo> list = createItSomehow();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(baos);

try {
    oos.writeObject(list);
} finally {
    oos.close();
}

byte[] bytes = baos.toByteArray();
// ...

And the other way round:

ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
ObjectInputStream ois = new ObjectInputStream(bais);
List<Foo> list = null;

try {
    list = (List<Foo>) ois.readObject();
} finally {
    ois.close();
}

// ...

Instead of ByteArrayOutputStream and ByteArrayInputStream you can of course also supply FileOutputStream and FileInputStream respectively to write/read it to/from file.

See also:

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文