一次改了一天的一个bug的深思
1.先来bug
这次的bug是一个EOFException: unexpected end of ZLIB input stream
简单来说这bug很烦
bug详情:解压文件时,inputstream.read()到最后时没有找到结束标识符。
2.解决方法
- 最开始想到的就是去解决它,本着第一次遇到这糟心的bug的心态去百度了,嗯…不是让我提前把流关闭,就是让我设置buffer的大小,嗯…没啥用。
- 请教了大佬,是说如果真的是少了个结束标识符的话给它加上去就好了,嗯…,于是我开始了先找到同类型的文件去读取它的标识符,摁…就是打印字节出来看…摁…哪里有这个标识啊啊啊啊啊啊啊啊啊,于是话开始百度了,嗯,好像这类的信息有点藏得有点深,行吧行吧,于是我就去干饭了,别问我找到了没有,自己找找看就知道了。
- 干饭干着突然想到为啥要去解决它呢,??????,他是一个异常,嗯,对,异常,为啥会有异常呢,因为有东西去检查它,或者它想干什么东西干不下了,就报异常,so,so,so,这是个啥,它不就是个标识嘛,标志着什么东西没有,标志着什么东西缺少,so,EOFException他不就是标志着文件读取结束了嘛,带着这样的想法,我去测试去了,至于结果嘛,当然是可以的啦,debug下打印了拿到的输入流的内容,通过和写入的文件对比,发现是一样的,嗯,结果nice…
3.思考又或者叫一个结果
- 结果好像说过了,再说一遍,不然标题白取了,还得删。
- 结果就是 异常,异常,异常他是的标识,他不是bug,他也是我们程序实现的一种判断方式。