java lz压缩_PHP和Java之间的LZString压缩数据

我正在编写的一个Android应用程序获取使用LZString压缩的数据,并以base 64的形式发送出去。我在用

this implementation

对于Java中的LZString以及

this one

在PHP中。这两种实现都是顶级的建议

listed here

作者原创的JavaScript端口LZW。

我很难理解为什么PHP发送的LZString数据在Java中会抛出异常。经过大量的实验和紧张的神经,我最终发现这个问题归结于Java中的明显填充,而在从PHP发送的数据中,这个填充是不存在的。以下为例

Original String being compressed

贝蒂买了一点黄油,但它是苦的,所以她买了一些更好的黄油,使苦的黄油更好

我用来测试的一个句子,因为有了它的多次重复,可能会压缩得很好。

LZString的PHP实现抛出以下字节数组

69 73 85 119 76 109 67 101 65 69 66 71 68 50 66 88 65 53 103 67 122 78 65

104 110 65 108 104 43 65 90 110 73 104 67 65 69 55 69 90 55 81 68 117 109 65

122 114 113 82 102 102 78 80 97 105 72 69 109 104 113 119 76 90 100 89 52 77

79 85 113 105 75 89 78 118 48 119 66 114 76 109 69 53 77 74 52 115 99 79 90

65

而Java实现生成以下字节数组

69 73 85 119 76 109 67 101 65 69 66 71 68 50 66 88 65 53 103 67 122 78 65

104 110 65 10

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值