当前位置:首页 > 开发 > 编程语言 > Ruby > 正文

ruby添加压缩文件,乱码问题

发表于: 2011-11-18   作者:hotsunshine   来源:转载   浏览次数:
摘要: 项目中存在pdf文件打包的需求,由于文件名都是中文,结果下载的时候都是乱码 项目在linux下运行,打包下载的主要是给window提供 打包的代码很简单 Zip::ZipFile.open "zip文件名.zip", Zip::ZipFile::CREATE do |zip| zip.add("zip包中的显示的文件名(或者文件路径)"
项目中存在pdf文件打包的需求,由于文件名都是中文,结果下载的时候都是乱码
项目在linux下运行,打包下载的主要是给window提供

打包的代码很简单
Zip::ZipFile.open "zip文件名.zip", Zip::ZipFile::CREATE do |zip| 
  zip.add("zip包中的显示的文件名(或者文件路径)","要打包的文件(路径)")
end


测试下载之后是乱码
我这里要打包的文件也是ruby生成的,他的编码格式是utf-8,下载到window上一般是gbk(我用gb2312测试是失败的)

需要把文件名称转码
Zip::ZipFile.open "zip文件名.zip", Zip::ZipFile::CREATE do |zip| 
  zip.add(Iconv.iconv("GBK//IGNORE", "UTF-8//IGNORE", "zip包中的显示的文件名或者文件路径"),"要打包的文件(路径)")
end





ruby添加压缩文件,乱码问题

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
乱码问题解决了 require 'string' require 'open-uri' url = "http://www.iteye.com" open url do |a
Ruby代码: t1 = Time.now.to_i min = Math.sqrt(1).to_i max = Math.sqrt(10**14).to_i def isH(num
问题: 使用Adobe Reader将一份pdf文件通过我的虚拟打印机输出后(输出的是中间文件,等同于EMF文件
Web项目 Jsp+Tomcat+Mysql乱码解决终极篇 写在之前: 编码出现错误了在web开发的情况下是常常出现的
是用cdb出现乱码问题,搞了我几个小时。 吸取的教训就是: 1、蛋疼的cdb,蛋疼的iso编码。不允许修
前两天,用了如下代码: Reader r = new FileReader("C:\\Documents and Settings\\Administrator\\
问题描述: 通过mybatis写入中文数据出现乱码,通过输出查看得知从前端传递给后端的中文是正常的,
解决方法: 1、关闭数据库连接; 2、右击数据库选择“连接属性”; 3、选择“高级”属性页,将“使用
velocity出现乱码总结: 一.首先要确保开发工具(如eclipse),WEB服务器(如tomcat),数据库 (如 my
前几天装了下eclispe的groovy插件,就试了下很火的动态语言groovy。不过发现无论是在eclipse的控制
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号