转载自:http://blog.csdn.net/defonds/article/details/7044750
sun.jnu.encoding 影响文件名的创建,而file.encoding 则影响到文件内容。
所以说,在我们使用 Java 处理中文文件的时候,如果发现文件的中文内容没有乱码,而文件的中文名发生乱码,我们就应当多考虑一下sun.jnu.encoding 和 file.encoding 的区别了。
支持中文文件目录的org.apache.tools.zip.* 打包解压缩中文文件夹都没有问题的。但有的时候打包后的中文文件名会出现乱码,这是为什么呢?查看org.apache.tools.zip.ZipOutputStream 的 API 会发现关于其getEncoding() 方法的说明:“The encoding to use for filenames and the file comment.”,将以下语句执行一下:
-
org.apache.tools.zip.ZipOutputStreamout=neworg.apache.tools.zip.ZipOutputStream(newjava.io.FileOutputStream("D:/temp/testfile.zip"));
-
System.out.println("out.getEncoding()="+out.getEncoding());
执行结果如下:
out.getEncoding()=null
问题就在这里了。在org.apache.tools.zip.ZipOutputStream 创建好以后,手工设置一下:
-
out.setEncoding(System.getProperty("sun.jnu.encoding"));
发现打包后中文名可以正常显示了。
参考一:http://stackoverflow.com/questions/1066845/what-exactly-is-sun-jnu-encoding【stackoverflow 关于sun.jnu.encoding
的解答】,
参考二:http://www.jajakarta.org/ant/ant-1.6.1/docs/ja/manual/api/org/apache/tools/zip/ZipOutputStream.html【ZipOutputStream
的 API】,
参考三:http://massapi.com/source/apache-ant-1.8.2/src/main/org/apache/tools/zip/ZipOutputStream.java.html【ZipOutputStream
的源代码】。
分享到:
相关推荐
tomcat源码分析
jnu_forum是基于Java的论坛系统。前端使用Html+CSS+JS实现,后端使用Java语言开发,技术栈包括但不限于Spring/SpringMVC/SpringBoot、MyBatis、Redis、PageHelper、MySQL、Maven等,开发工具为Eclipse。 功能 1、...
在tomcat中bin目录下catalina.bat(setlocal关键字下)文件中增加 set JAVA_OPTS=-Dsun.jnu.encoding=UTF-8 -Dfile.encoding=UTF-8。本套工作流可视化编辑与我的另一个资源spring mybatis activiti整合配套欢迎下载...
硬件系统和软件系统组成 B.主机和外设组成 C.主机和网络组成 D.主机外设和网络组成 7.计算机断电后,会使存储的数据丢失的存储器是______。 A. RAM B.硬盘 C. ROM D.软盘 8.计算机硬件系统的主要组成部件有五大部分...
操作系统的作用是( C ) A、把源程序编译成目标程序 B、便于进行文件夹管理 C、控制和管理系统资源的使用 D、高级语言和机器语言 17. Internet是( A )类型的网络。 A、广域网 B、城域网 C、局域网 `D、企业网 18...
jnu.fm暨南FM 是一个暨南大学校内微信公众平台,这个github 项目是JNU.FM 运营期间所衍生的项目目前这个项目分为两个独立的部份1.API伺服器. 一套针对学校教务处,校园卡中心,图书馆紧凑的API封装2.微信服务器. 与微信...
Research and Application of Bearing Fault Diagnosis Based on Deep Encoder Classification Model
它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。冯.诺依曼在1945年提出了现代计算机的若干思想,被后人称为冯.诺依曼思想,这是计算机发展史上的...
jnu_forum是基于Java的论坛系统。前端使用Html+CSS+JS实现,后端使用Java语言开发,技术栈包括但不限于Spring/SpringMVC/SpringBoot、MyBatis、Redis、PageHelper、MySQL、Maven等,开发工具为Eclipse。 功能 1、...
matlab实验
jnu_forum是基于Java的论坛系统。前端使用Html+CSS+JS实现,后端使用Java语言开发,技术栈包括但不限于Spring/SpringMVC/SpringBoot、MyBatis、Redis、PageHelper、MySQL、Maven等,开发工具为Eclipse。 功能 1、...
JNU_论文 论文指导。
本网站由 JNU 工程学院的 Amaan、Nitish、Ajit 和 Ravi 组成的团队开发。 该网站的目的是以博客的形式为JNU动漫社区提供一个空间,提供动漫/漫画新闻和推荐以及入门资源。 使用的技术栈: HTML CSS 引导程序 ...
jnulib-auto-save-bookAutomatically save images into pdf book for jnu library.##使用说明(访问 把【存书】链接拖到书签栏,在图书馆书籍页面【点击阅读电子版】打开的页面上点击一下该书签,耐心等待足够长的...
该文件为Google Chrome浏览器安装包!!
JNU项目库自动化预约图书馆房间
JNU-StuHealth某个学校的自动打卡脚本功能√获取上次数据√打卡√根据状态发邮件使用帮助修改脚本里面有中文字的地方
JNU19IS 暨大19信安(IS,信息安全)内容包括电子版的作业,实验报告,代码等。 这是我同学的公开回购,用于上传他们的代码,文档,想法等,但主要是报告和作业。友情提示:请多使用或个人使用的在线工具/网站分享:...