java生成压缩文件 ZipEntry出现乱码的问题
在项目中,一次导出的文件有好几个,而且文件内容比较大,最后考虑到把文件进行压缩在下载,开始试用JDK自带的ZIP压缩包时,ZipEntry ze = new ZipEntry(fileName);//这是压缩包名里的文件名 如果filename是中中文时,文件名就会出现乱码,最后换成apache的zip就没有这个问题了,相关的类都在ant包里,import更新如下:
// import java.util.zip.ZipEntry;
// import java.util.zip.ZipOutputStream;
import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipOutputStream;
具体压缩方法如下,文件路径等内容由于是测试直接写死在代码中
/**
* 生成压缩文件
* @param tBaseReportForm
*/
public void createZip(TBaseReportForm tBaseReportForm) throws Exception{
FileOutputStream fos = new FileOutputStream(“d:/性能分析数据报表.zip”);
BufferedOutputStream bos = new BufferedOutputStream(fos);
ZipOutputStream zos = new ZipOutputStream(bos);//压缩包
for(String fileName : tBaseReportForm.getPrintFileName()){
File f = new File(“d:/” + fileName);
FileInputStream fis = new FileInputStream(f);
BufferedInputStream bis = new BufferedInputStream(fis);
byte[] buf = new byte[1024];
int len;
ZipEntry ze = new ZipEntry(fileName);//这是压缩包名里的文件名
zos.putNextEntry(ze);//写入新的 ZIP 文件条目并将流定位到条目数据的开始处
while((len=bis.read(buf))!=-1)
{
zos.write(buf,0,len);
zos.flush();
}
fis.close();
bis.close();
}
zos.close();
}
1 楼
54五味子
2012-03-14
ant包在哪里啊?
哥哥
什么版本》?
今天的文章zipentry压缩乱码linux,java生成压缩文件 ZipEntry出现乱码的有关问题分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/30121.html