草庐IT

zip_entry

全部标签

ruby-on-rails - 使用 Tempfile 在 rails 中创建一个 zip 文件

我想在rails中创建一个临时的.zip。为了创建zip文件,我使用了rubyzipgem。目前我正在这样做:zfname=Tempfile.new(['somename','.zip'],Rails.root.to_s+'/tmp/')Zip::ZipFile.open(zfname.path,Zip::ZipFile::CREATE)do|zipfile|zipfile.add(file,basepath+file)end这会产生以下错误:Zip::ZipError:Zipendofcentraldirectorysignaturenotfound是否可以将Tempfile用于zi

ruby - 通过 Net::HTTP 下载 zip 文件

我正在尝试从WordPress.org下载最新的.zip使用网络::HTTP。这是我到目前为止所得到的:Net::HTTP.start("wordpress.org/"){|http|resp=http.get("latest.zip")open("a.zip","wb"){|file|file.write(resp.body)}puts"WordPressdownloaded"}但这只会给我一个4KB的404错误HTML页面(如果我将文件更改为a.txt)。我认为这与URL可能以某种方式重定向有关,但我不知道我在做什么。我是Ruby的新手。 最佳答案

ruby-on-rails - 使用 zip 在 ruby​​ 中转置哈希

下面的散列是否有更简单的转置?我有一个可行的解决方案,但转置方法很难阅读。用例是作业(j1、j2、j3等)及其发生日期(d1、d2、d3等)的散列。要求是对按日期然后是工作分组的事件(e1、e2、e3等)进行哈希处理,并将它们转换为按工作然后是日期分组的事件.我试验了#zip方法,但这需要在j1:d1处注入(inject)nil,然后将它们从结果中剥离出来。我也很难找到#zip的示例用法带有block参数。我明白#zipwithablockalwaysreturnsnil但结果我无法理解您将如何实际使用它。require'rspec'require'pry'#|d1|d2|d3|#--

ruby - 使用 nokogiri 和 ruby​​zip 编辑 docx

在这里,我使用ruby​​zip和nokogiri修改.docx文件。RubyZip->Unzip.docxfileNokogiri->Parseandchangeincontentofthebodyofword/document.xml当我在下面编写示例代码时,代码修改了文件,但其他文件受到了干扰。换句话说,更新的文件没有打开显示错误字处理器崩溃。我该如何解决这个问题?require'zip/zipfilesystem'require'nokogiri'zip=Zip::ZipFile.open("SecurityForms.docx")doc=zip.find_entry("wor

Ruby:读取临时 zip 文件

我有一个TempFile对象,它是一个zip文件,我希望按如下方式读取它:Zip::ZipFile.open_buffer(tempfile)do|zipfile|...end但是,当我这样做时,出现以下错误:Zip::ZipFile.open_bufferexpectsanargumentofclassStringorIO.Found:Tempfile我也试过Zip::ZipFile.open(tempfile.path)do|zipfile|...end但是返回can'tdupNilClass如何处理临时zip文件? 最佳答案

ruby - 如何使用 ruby​​zip 将 zip 存档中的文件附加到 ActiveStorage 对象 Rails 5

我有一个模型,其中一个附件使用ActiveStorage:classProofreadDocument我正在执行一个将文件附加到proofread_document的rake任务。这些文件被压缩成一个zip存档。我知道我可以通过阅读ActiveStorage文档附加如下文件:@proofread_document.file.attach(io:File.open('/path/to/file'),filename:'file.pdf')我的rake任务中有以下内容:Zip::File.open(args.path_to_directory)do|zipfile|zipfile.each

ruby - Zip 文件中的子目录使用 ZipOutputStream

我正在使用此处描述的技术创建一个zip文件:http://info.michael-simons.eu/2008/01/21/using-rubyzip-to-create-zip-files-on-the-fly/客户要求我在此zip文件中包含子目录。我搜索了ZipOutputStream文档,但我看不到包含目录的方法。有没有办法用ZipOutputStream做到这一点?我应该使用与ZipOutputStream不同的类吗?此外,我正在压缩的文件不在本地文件系统中,而是存储在云服务中。 最佳答案 想出了答案,我想我会把它放在这里

ruby - Ruby 中的 Enumerable#each 和 Enumerable#each_entry 之间有区别吗?

Enumerabledocumentation没有明确说明each是each_entry的别名,但是each_entry的描述与我对each.在两个答案的示例中,都定义了新类,这些类实现了Enumerable模块并定义了each方法。谁能给出一个内置类的例子,比如Array或Hash,它们与each和的行为不同每个条目? 最佳答案 它们是不同的。使用RDoc中的示例:classFooincludeEnumerabledefeachyield1yield1,2yieldendendFoo.new.each_entry{|o|po}#=

GameFrameWork框架(Unity3D)使用笔记(一)Entry

目录目录前言: 一、创建项目,引入框架二、游戏入口前言:         很久以前就已经听说过这个框架了(GameFramework|基于Unity引擎的游戏框架),看过官方的文档和一丢丢教程(就硬不更呗),也看过很多视频教程、博客等,但大多数都只停留在代码分析,很少有详细的上手实践教学。于是经常会这样,看完后发现自己看的时候好像理解了,但是上手用的时候却一片茫然。        所以我决定以实践促学,上手用GameFrameWork框架实现一个简单的较为完整的项目,并且把这个过程给记录下来。        本次实践的主要内容是将框架应用到我们团队之前做的一个游戏《汝影》中去(Unity版本:

ruby - 使用 ruby​​zip 将文件和嵌套目录添加到 zipoutputstream

我正在努力让ruby​​zip将目录附加到zipoutputstream。(我想要输出流,所以我可以从RailsController发送它)。我的代码遵循这个例子:http://info.michael-simons.eu/2008/01/21/using-rubyzip-to-create-zip-files-on-the-fly/当修改为在要添加的文件列表中包含目录时,出现以下错误:如有任何帮助,我们将不胜感激。更新在尝试了一些解决方案后,我在zipruby上取得了最大的成功,它有一个干净的api和很好的例子:http://zipruby.rubyforge.org/.