Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在Ruby内存中压缩字符串_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 在Ruby内存中压缩字符串

Ruby on rails 在Ruby内存中压缩字符串,ruby-on-rails,ruby,Ruby On Rails,Ruby,有没有一种方法可以压缩字符串(使用gem或标准lib),以便获得字符串的压缩结果?例如: "hello world".zip #=> zipped version of string 另外,如果有人能在他们的解决方案中包含这一点,解压也会很好。我想让您参考这个nice by,它详细介绍了,正如您在中看到的那样,它有输入和输出流对象,应该完全按照您的要求进行操作。您可以使用它 可能重复标记/投票以重复方式关闭,而不是发布指向其他问题/答案的链接。我也标记了重复,但我不知道它将如何合并或关闭

有没有一种方法可以压缩字符串(使用gem或标准lib),以便获得字符串的压缩结果?例如:

"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"