我想在 Java 中压缩一个字符串(一个 XML 文档)并将其作为 varchar
存储在 Cassandra 数据库中。我应该能够在从数据库读取时解压缩它。我查看了 GZIP 和 lz4,它们都在压缩时返回了一个字节数组。
我的目标是从压缩数据中获取一个字符串,该字符串也可用于解压缩并取回原始字符串。 最好的方法是什么?
最佳答案
我看不出您有什么好的理由来压缩您的数据:Cassandra 可以透明地为您做这件事(默认情况下它将 LZ4 您的数据)。因此,如果您的目标是减少数据足迹,那么您的问题就不存在了,我会将 XML 文档直接提供给 C*。
顺便说一句,所有压缩算法都采用字节数组并生成字节数组。作为解决方案,您可以将 base64 编码之类的东西应用于压缩的字节数组。解压时,反转逻辑:对字符串进行 base64 解码,然后应用解压算法。
关于java - 从压缩数据中获取字符串,反之亦然,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43539695/