我想压缩任何字符串,如果它有超过 50 个字符。如果 char 大小小于 50,则让它保持不变,否则必须将其压缩到所需的限制 (50)。
我将在 DB 中插入这个压缩/未压缩的输出。因此,在从 DB 取回数据时,我希望压缩字符串与未压缩字符串很容易区分开来(压缩字符串的一些常见模式)。
请建议一些最好的压缩库/算法?
我想压缩任何字符串,如果它有超过 50 个字符。如果 char 大小小于 50,则让它保持不变,否则必须将其压缩到所需的限制 (50)。
我将在 DB 中插入这个压缩/未压缩的输出。因此,在从 DB 取回数据时,我希望压缩字符串与未压缩字符串很容易区分开来(压缩字符串的一些常见模式)。
请建议一些最好的压缩库/算法?
请建议一些最好的压缩库/算法?
没有这样的算法或库,因此可以将任何字符串压缩到给定的最大字符(例如 50 个)而不会丢失任何信息。
如果您的压缩允许有损,您可以使用Apache Commons lang 的 abbreviate 函数
我会使用 java.util.zip 包中的 Inflater / Deflater。他们使用本地 ZLIB 压缩库,并且非常高效。区分压缩文本和未压缩文本很容易 - 尝试解压缩,如果它是纯文本,则会出现异常