首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用rubyzip保存zip注释

使用rubyzip保存zip注释
EN

Stack Overflow用户
提问于 2012-04-07 05:47:08
回答 2查看 218关注 0票数 1

尝试使用rubyzip向一个zip文件添加注释,否则我根本不会修改该文件。

代码语言:javascript
复制
zf = Zip::ZipFile.open 'Archive.zip'
zf.comment = "blah blah blah"

我尝试过zf.closezf.commit,但没有成功。我在通读文档,但我似乎找不到解决方案。

以前有人这么做过吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-08 07:15:04

升级到RubyZip 0.9.7 (今天发布),它修复了这个错误。

票数 1
EN

Stack Overflow用户

发布于 2012-04-07 06:06:41

我用下面的代码成功地尝试了一下:

代码语言:javascript
复制
require 'zip/zipfilesystem'

zf = Zip::ZipFile.open 'Archive.zip', 'w'
zf.comment = "blah blah blah"

zf.get_output_stream("first.txt") { |f| f.puts "Hello from ZipFile" }
zf.close

我至少添加了一个文档来创建zip文件。没有内容,就没有zip文件(仅有注释似乎不是内容)。

你不需要创建zip,你想要修改一个zip文件。

这也可以工作,但它还会更改zip-file:

代码语言:javascript
复制
require 'zip/zipfilesystem'

zf = Zip::ZipFile.open 'Archive.zip'
zf.comment = "CHANGED COMMENT"
zf.get_output_stream("second.txt") { |f| f.puts "Hello from ZipFile" }

zf.close

基于此,您可以执行以下操作:

代码语言:javascript
复制
require 'zip/zipfilesystem'

zf = Zip::ZipFile.open 'Archive.zip'
zf.comment = "CHANGED COMMENT"
zf.get_output_stream("second.txt") { |f| f.puts "Hello from ZipFile" }
zf.commit #write the data and change the commen
zf.remove("second.txt")  #remove the data again - the comment changed

zf.close
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10049627

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档