Ruby on rails 在Ruby内存中压缩字符串
有没有一种方法可以压缩字符串(使用gem或标准lib),以便获得字符串的压缩结果?例如:Ruby on rails 在Ruby内存中压缩字符串,ruby-on-rails,ruby,Ruby On Rails,Ruby,有没有一种方法可以压缩字符串(使用gem或标准lib),以便获得字符串的压缩结果?例如: "hello world".zip #=> zipped version of string 另外,如果有人能在他们的解决方案中包含这一点,解压也会很好。我想让您参考这个nice by,它详细介绍了,正如您在中看到的那样,它有输入和输出流对象,应该完全按照您的要求进行操作。您可以使用它 可能重复标记/投票以重复方式关闭,而不是发布指向其他问题/答案的链接。我也标记了重复,但我不知道它将如何合并或关闭
"hello world".zip #=> zipped version of string
另外,如果有人能在他们的解决方案中包含这一点,解压也会很好。我想让您参考这个nice by,它详细介绍了,正如您在中看到的那样,它有输入和输出流对象,应该完全按照您的要求进行操作。您可以使用它
可能重复标记/投票以重复方式关闭,而不是发布指向其他问题/答案的链接。我也标记了重复,但我不知道它将如何合并或关闭,因此我不确定OP是否会看到该链接。对不起,我对SO很陌生。:)在这种情况下,你可以随时发表评论。我正要发表评论,因为它是在stdlib中,所以非常容易访问:)谢谢!另一个解决方案是让我把它写到文件中。ZLIB文档并不是最好的。
>> require 'zlib'
=> true
>> s = "this is a long string with many many many many repetition"
=> "this is a long string with many many many many repetition"
>> s.size
=> 57
>> cs = Zlib.deflate(s)
=> "x\x9C+\xC9\xC8,V\x00\xA2D\x85\x9C\xFC\xBCt\x85\xE2\x92\xA2L U\x9EY\x92\xA1\x90\x9B\x98W\x89N\x14\xA5\x16\xA4\x96d\x96d\xE6\xE7\x01\x00\\?\x15P"
>> cs.size
=> 48
>> is = Zlib.inflate(cs)
=> "this is a long string with many many many many repetition"