- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我正在从压缩的数据库中读取 blob 数据(文件内容为 CSV 格式)。我的变量的结果如下所示:
irb(main):144:0> my_string => "\x1F\x8B\b\x00\xCB'\xFBY\x02\xFF\xC5R\xC1n\xDB0\f\xBD\xF7+\x04\xF46\xA8\x81d\xCB\x96}\f\x92\x15\xEB\x90\xE6\xB0\x04\xD8qPd&\xD1\x12K\xAE$w\xE8\xDF\x8F\x96\x9A\xA2\x87\x01\x03r\t\r\x8B|\x92H>>\xD\x7F\xC0\xCB\b\xE1\x03\x84\xC1\xD9\x00\x19=z\xD7o\xC1\xF7\x19m]\x8Aw*\xEA\xE3z\xECwX%ze\x83\xD2\xD18\xFB\xD4\x91\x88\xC7\xC6\xE2\xC5\xB7\x01\x88V\xBEKA\x88*\x8E\x81D\xD3c\x17\xD5\x0FD\xBD\x82W\aX\x1D\xB2\xD9\xAC\xDE!VM;\xB9\xFB\xD4*\xC1\xC1\xD8\xC3<\xD7\xC8\x04R\x9B\xDE \x01\xFCU\xEFF\x8B\xD3\x98a\x9E#\x0F\xFA\x9D\xED\xCEX\xD2+M,\xC4?\xCE\x9F\xC8\xD1\x85\xB8U\x87\xE41s\f\xE0\xD1\x81\xF7\xCFAG:\xD0gc\xA1#\xC6\xBE:\xA3\x013pc\xD2\xB5#\xBF\xDD\xE8q~rV\x16\xAC\xEA\xB3\b\xDF\xDC\xB9\x03\xBF\x9E 6@\xDEOK\xA2\xB4\x8E_m\xF48\xBD;\x81\xC5f\xFB\xA5\x8A\x8A\x84\xD1\xEB\xA3\xF28\xD8\xDE\x9D\x8DCxF0B\xA0\x0F\x1E\xA9\xA1\xA4\xC1DHBbt\xB0\xA8\xB7\x87\xAC\xFD\x05\xDD\xDDc\xE30\xD5\xE1\xB3\x8A\x143.f\xDB\x15\xBA\xA2\xBAc\xF4\xF2\xA5\xA5\x9C\xFE\xA6\x94\xAC\x15\x92I)(C\xFB\xB4
现在,我想在内存中读取这些信息,解压缩并解析 csv 文件。我正在使用 rubyzip 并尝试了以下操作:
Zip::File.open_buffer(my_string) do |zip|
zip.each do |entry|
decompressed_data += entry.get_input_stream.read
end
end
RuntimeError: Zip::ZipFile.open_buffer expects an argument of class String or IO. Found: String from (irb):224
有没有办法检索 zip 文件的内容?
最佳答案
我认为这里的主要问题是错误消息有点误导......
它应该说预期的文件名或 io。
在您的代码中,您需要将内容包装在 StringIO
对象中,以便将其视为流。
由于 open_buffer
已弃用,您应该使用 open
。
所以它看起来像open(StringIO.new(my_string)
关于rubyzip Zip::ZipFile.open_buffer 需要一个 String 类或 IO 类的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47437265/
基本上我的日志文件现在看起来像这样: Invalid date/time in zip entry Invalid date/time in zip entry Invalid date/time i
例如使用以下测试树文件夹: - test1 - folder2 - test1 # This is the file rubyzip will break on. - test2 并从 her
我想使用 rubyzip 压缩现有文件: c:\文本文件.txt 到 文本文件.zip 我知道如何将流添加到文本文件: require 'zip/zip' Zip::ZipFile.open("
我想知道与使用 native 操作系统库执行压缩相比,使用 rubyzip 压缩数据时的性能差异是什么。我正在从 URL 获取要压缩的数据,然后使用 ZipOutputStream 创建 zip
我正在尝试解压缩一个包含多个文件的文件,这些文件可能已存在于目标目录中,也可能不存在。似乎默认行为是在文件已存在时抛出异常。 如何解压缩到一个目录并简单地覆盖现有文件? 这是我的代码: begin
我正在尝试使用 rubyzip 在我的应用程序中动态创建 zip 文件。我正在使用 their readme作为起点。我将 gem 添加到我的 Gemfile 中: gem 'rubyzip' 然
我使用 rubyzip-1.2.0 和 ruby 2.2.1 生成一个包含单个文件(在本例中为 python 脚本)的 zip 文件。内容文件没有改变,生成的 zip 字符串的 md5sum
对于我的 Ruby on Rails 项目(Rails 版本 5.1.2),我正在生成图像文件 (png) 并使用 RubyZip gem 将它们下载为 zip 文件。 图像文件不存储在任何目录中。我
当我尝试使用写入模式打开 zip 文件时,系统会记录以下消息。 完整错误信息: undefined method `to_binary_dos_time' for 2017-05-30 15:07:2
我有一个 Ruby 程序,它使用 rubyzip 压缩 XML 文件的目录树。 gem 。我的问题是文件开始变得很重,我想提高压缩级别,因为压缩时间不是问题。 我在 rubyzip documenta
在我的 Rails 4.2 应用程序中,我使用 RubyZIP创建类似于以下内容的 Controller 操作: class SomeController < ApplicationControlle
我有一个名为 Image 的模型。图像使用存储在 S3 中的 Dragonfly 附加文件。 我有一个需求,我需要压缩所有图片。 我正在使用: Zip::ZipFile.open(tmp_zip,
我一定是遗漏了一些非常明显的东西,但我似乎无法得到 'zip' gem 工作。我已经用 rubygems 安装了它,就像我用其他许多 gem 一样。 Rubygem 说它在那里,但是当我尝试要求它
我正在从压缩的数据库中读取 blob 数据(文件内容为 CSV 格式)。我的变量的结果如下所示: irb(main):144:0> my_string => "\x1F\x8B\b\x00\xCB'\
我想在压缩后从我的网站下载照片。我正在使用 rubyZip gem,但无法压缩远程文件。以下是场景: 我正在尝试从服务器压缩内容。内容是这样的 http://myApplication.s3.am
我有这段代码,它将一个 zip 文件写入磁盘,读回,上传到 s3,然后删除文件: compressed_file = some_temp_path Zip::ZipOutputStream.open(
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是偏离主题的,
我目前正在尝试将图像文件直接从 zip 文件附加到模型(即,无需先将它们保存在磁盘上)。似乎应该有一种更清晰的方法将 ZipEntry 转换为可以存储在内存中的临时文件或文件,以便传递给另一个知道如何
我是一名优秀的程序员,十分优秀!