gpt4 book ai didi

java - Kryo 反序列化失败,返回 "KryoException: Buffer underflow"

转载 作者:搜寻专家 更新时间:2023-10-30 19:57:15 34 4
gpt4 key购买 nike

我使用 Kryo 将对象写入字节数组。它工作正常。但是当字节数组转换为对象时,它会抛出 com.esotericsoftware.kryo.KryoException: Buffer underflow. 异常。

这是我的反序列化:

        Kryo k=new Kryo();
Input input=new Input(byteArrayOfObject);
Object o=k.readObject(input,ObjectClass.class);

此外,在我的应用程序中始终无法定义对象类型。在最后的过程中,类转换发生。因此,

  • 如何解决上述反序列化错误

  • 有没有一种方法可以创建对象而无需将类赋予读取对象(...,类名)?

最佳答案

这发生在我没有正确关闭输出/输入类型时。您需要确保 Kryo 刷新除 output.flush()output.close() 之外的所有内容。

其次,查看 kryo.writeClassAndObject()。然后你可以执行 kryo.readClassAndObject() 并将你的对象转换为它应该是的类型。

关于java - Kryo 反序列化失败,返回 "KryoException: Buffer underflow",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24484022/

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