def download<o:p></o:p>
filename='filename' #文件名 filename.zip<o:p></o:p>
if FileTest.file?('public/date/'+filename+'.zip') <o:p></o:p>
File.delete('public/date/'+filename+'.zip') <o:p></o:p>
End #如果文件已经存在,则先删除<o:p></o:p>
a='abcdefg'<o:p></o:p>
#\puts a.<o:p></o:p>
#读取数据库的内容<o:p></o:p>
@picture = Picture.find(:first)<o:p></o:p>
@data = @picture.picture_data<o:p></o:p>
Zip::ZipFile.open('public/date/'+filename+'.zip', Zip::ZipFile::CREATE) { #打开一个文件<o:p></o:p>
|zipfile|<o:p></o:p>
text=text+"内容"
text=text+"\r\n"<o:p></o:p>
zipfile.file.open("index.txt","w") { |f| f.puts text } #把数据库的内容写到文本文件里去<o:p></o:p>
<o:p> </o:p>
zipfile.dir.mkdir("mydir") #新建目录<o:p></o:p>
zipfile.file.open("mydir/index.txt", "w") { |f| f.puts @tempt1 }<o:p></o:p>
#把文本放在新建的目录下<o:p></o:p>
zipfile.file.open("mydir/second.jpg", "w") { |f| f.puts(@data) }<o:p></o:p>
#把数据库里的图片放在新建的目录下 <o:p></o:p>
}<o:p></o:p>
<o:p></o:p>
send_file 'public/date/'+filename+'.zip', :filename => filename+'.zip', :type => "application/octet-stream" #打包下载<o:p></o:p>
end
分享到:
- 2006-12-26 09:20
- 浏览 2103
- 评论(0)
- 论坛回复 / 浏览 (0 / 2933)
- 查看更多
相关推荐
总的来说,RubyZip是一个强大的工具,无论你是要处理日常的文件打包需求,还是在大型项目中整合压缩功能,它都能提供稳定、高效的支持。它的开源性质促进了持续改进和社区参与,确保了这个库的可持续发展和适应性。...
标题中的"ruby-2.3.0.zip"指的是Ruby编程语言的一个特定版本——2.3.0的压缩包文件,通常包含源代码或者编译后的二进制文件。Ruby是一种面向对象、动态类型的脚本语言,由日本人松本行弘(Yukihiro Matsumoto)在...
标题中的"iOS自动打包脚本,具有打包、重签名、自动上传及发邮件功能.zip"表明这是一个用于自动化iOS应用打包流程的工具,它能帮助开发者节省时间,减少手动操作的错误。这个压缩包文件名为"IOSAutoPackaging-master...
Ocra,全称为"One-Click Ruby Application",是专门为Ruby开发者设计的一个工具,它允许用户将Ruby源代码打包成独立的可执行文件,使得在没有Ruby环境的Windows系统上也能运行Ruby应用程序。这一特性对于分发和部署...
描述中提到的问题,即国内访问Ruby官网下载链接困难,可能是因为网络限制或速度慢,所以提供了一个已打包的离线安装包,方便用户快速获取并安装Ruby环境,无需通过Ruby官方网站进行下载。 压缩包内的"rubyinstaller...
这个压缩包文件“信号强度指示器_Swift_Ruby_下载.zip”似乎包含了一个项目,该项目可能用于在iOS设备上用Swift语言创建一个信号强度指示器。Swift是一种由Apple开发的编程语言,专为iOS、iPadOS、macOS、watchOS和...
6. **标准库**: Ruby的标准库是一系列预先打包的模块和类,提供各种通用功能,如文件操作、网络通信、日期和时间处理等。例如,`File`类用于处理文件和目录,`Net::HTTP`用于HTTP请求。 7. **Gem**: Gem是Ruby的包...
在描述中,“JavaScript_Ruby_下载.zip”进一步确认了该项目使用这两种编程语言,并且提供了一个可下载的ZIP文件。ZIP文件是常见的压缩格式,用于将多个文件打包在一起方便传输和存储。在这个案例中,"hedonism-...
4. **bin**:这是存放可执行文件的地方,包括Ruby解释器(如`ruby.exe`)以及其他可能的命令行工具,比如用于编译Ruby源代码的`rubycc`或用于打包和管理Gem的`gem`。 5. **doc**:这个目录可能包含Ruby的文档,如...
Extjs 5 beta 版下载链接:http://cdn.sencha.com/ext/beta/ext-5.0.0.736.zip Extjs 4.2.1 下载链接:http://cdn.sencha.com/ext/gpl/ext-4.2.1-gpl.zip Extjs 4.0.7 下载链接:http://cdn.sencha.
5. Fastlane:Fastlane是一款流行的iOS部署工具,它使用Ruby编写,可以帮助开发者自动化打包、签名、发布应用等流程。 在这个资源中,"FVCustomAlertView-master"可能是项目的源码仓库,包含自定义AlertView的...
ruby-on-lambda, 自动化脚本,帮助运行 ruby 2.1程序 上的 ruby为什么?因为:AWS的Lambda具有巨大的潜在意义和有趣的含义AWS的Lambda还没有正式支持 ruby,因为ruby 具有...通过:将一个 ruby 二进制文件打包到我们
Ruby 2.00、Selenium WebDriver 和 Watir WebDriver 是自动化测试领域中广泛使用的工具,尤其在...备份这个打包文件(Ruby200.zip)可能是为了保留特定版本的环境配置,便于将来复用或回溯,确保测试脚本的可重复性。
描述中提到"Windows下的Ruby安装包,官方网站下载太慢,所以将2.5.8、2.6.6和2.7.1三个版本的rubyinsaller-devkit安装包打包在一起",这说明了此压缩包的目的是为了解决用户从官方源下载速度慢的问题,方便用户一次...
1. **包管理**:RubyGems允许开发者打包他们的代码为gem,这是一种可重用和可分发的代码模块。这使得安装、升级和卸载库变得简单,只需一条命令即可。 2. **依赖管理**:每个gem都可以声明它依赖的其他gem,...
`.tar.gz`文件是Linux/Unix平台常用的归档格式,用于打包和压缩文件,便于分发和安装。 2. **RubyGems 2.6.2**: RubyGems是Ruby的官方包管理器,它允许开发者轻松地安装、管理和更新Ruby库(称为Gems)。RubyGems ...
2. **Python库**:`fastlane`是一个强大的自动化工具,它允许开发者通过简单的Ruby脚本执行复杂的iOS和Android任务,包括打包。你可以通过Python调用`subprocess`模块来执行`fastlane`命令。如果没有`fastlane`,你...
《iOS开发:Fastlane自动化打包详解》 在iOS应用开发过程中,打包是一个不可或缺的环节,而手动打包不仅耗时,还容易出错。为了解决这个问题,开发者们引入了Fastlane,一个强大的自动化工具,旨在简化iOS和Android...
在这个“Devise的预打包版本,配置随时可用_JavaScript_HTML_.zip”中,我们可以推测它包含了以下关键组件和概念: 1. **Bootstrap-Master**:这是一个包含 Bootstrap 框架的目录,Bootstrap 是一个流行的开源 CSS ...
本压缩包包含了搭建 Redis 集群所需的三个关键组件:Ruby 安装器(RubyInstaller)、Redis 的 gem 包以及 `redis-trib.rb` 工具,这些都是在 Windows 上搭建 Redis 集群所必需的。 1. **RubyInstaller-2.4.10-1-x64...