我正在尝试开发具有QR码功能的混合移动应用。 QR码包含有限数量的字符可以与它一起存储。所以,我在想是可以压缩字符串使其缩短,以便我可以在QR码中存储更多信息吗?
答案 0 :(得分:0)
如果长度很短,大多数压缩算法实际上会使数据更长,而不是更短。有些算法可能运行良好,但...... smaz会浮现在脑海中。但是,它将严重依赖于您要压缩的,并且您还没有真正提供任何相关信息。
不要考虑压缩,最好的办法是找到一种对数据更有意义的编码方案。例如,如果您要对日期和时间进行编码,请将其存储为单个数字而不是文本。想想你是否真的需要秒。如果要存储数字,请考虑使用可变长度数量。如果您的数据是JSON,请考虑使用protobuf。
如果您拥有真正的文本,那么考虑使用自己的字符集可能是值得的。而不是每个字符8位的ASCII,你可以限制自己64个字符? a-z,A-Z,0-9和两个标点字符只有64个可能的符号...如果这就是你需要的全部,你可以使用6位编码。如果字符串不区分大小写,那么你就有很多标点符号。