记一次无从下手的二进制流文件解析

最近做的项目使用到了GCDWebServer,通过跟一个类似单片机的东西进行udp发送,然后它会访问我手机上的WebServer给我一个file。
最开始我是这么写的,想看看单片机给我发的是什么样的数据。


data为它发给我的数据

记一次无从下手的二进制流文件解析_第1张图片
str打印内容为

我当时一看,就感觉不太对劲了,怎么会这样。

Connection on socket 15 processing request "POST /znjj/home/device/lanfile" with 1328 bytes body
1328bytes body,说好的file呢!说好的xml呢?

后来抓包发现,这里面有大量的未知内容。
我第一个反应就是解压缩!!
没错,要解压缩。

记一次无从下手的二进制流文件解析_第2张图片
把data存到固定位置,然后通过第三方库SSZipArchive解压缩,得到新的data,然后再转str查看
记一次无从下手的二进制流文件解析_第3张图片
解压缩后的data转str打印结果如图

剩下的就是xml解析,这种简单的事情了。
在遇到问题的时候要勇于尝试,不要害怕,我们有的是时间去解决,1个小时解决不了就一个上午,一个上午解决不了就一天。
没有人会坎坷都没有就成了大神。遇到问题多尝试按自己的套路去解决。
共勉。

你可能感兴趣的:(记一次无从下手的二进制流文件解析)