java——解决java.io.StreamCorruptedException: invalid stream header: xxx
Posted gaoquanquan
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java——解决java.io.StreamCorruptedException: invalid stream header: xxx相关的知识,希望对你有一定的参考价值。
这个错误是由序列化引起的,可能的原因以及解决方法:
1.kryo对于集合(比如 Map)的反序列化会失效,报这个错误,解决办法比较暴力,不用kryo了,直接用java原生方法。
2.使用Java原生方法要注意,序列化和反序列化的方式,不能直接使用str.getBytes()获取二进制流,应该使用序列化方式获取二进制流:
https://blog.csdn.net/weixin_33881050/article/details/87100661
3.对于Map仍然序列化失败,这时候可以将Map对象转换成json字符串来存储,反序列化也是需要将字符串再转成map : JSONObject.toJSONString(jsonResult)
4.如果还不行,那就将map转成json对象,再把json对象转成json字符串存储,反序列化同上~
以上是关于java——解决java.io.StreamCorruptedException: invalid stream header: xxx的主要内容,如果未能解决你的问题,请参考以下文章
如何解决java.lang.NoClassDefFoundError问题
如何解决java.lang.NoClassDefFoundError