压缩excel问题 使用apache ant.jar压缩excel时,压缩小于50K的excel,会报文件格式未知或压缩数据已经损坏。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public static File zipFile(String zipName, File[] files) { File file = new File(zipName); try { ZipOutputStream out = new ZipOutputStream(file); for(int i = 0; i < files.length; i++) { if(files[i] == null) { continue; } FileInputStream in = new FileInputStream(files[i]); ZipEntry entry = new ZipEntry(files[i].getName()); out.putNextEntry(entry); int len = 0; byte[] bytes = new byte[256]; while((len = in.read(bytes, 0, bytes.length)) != -1) { out.write(bytes, 0, len); } out.closeEntry(); in.close(); } out.flush(); out.close(); } catch(Exception e) { e.printStackTrace(); } return file; }试试。 主要是linux下,当excel小于50K压缩时,会报文件格式未知或者已经损坏的问题,但是在本机上(Window XP)应用正常 你看看linux系统编码是什么啊?是不是和你的压缩文件所用的编码一致啊,你的客户端浏览器是在windows下,但压缩程序的服务器是在linux下,这两个需要编码统一才行 PBEWithMD5AndTripleDES加密算法报错 Java Web项目如何加上License ssh2项目调试问题,在线等 急···· 根据一个目录的目录结构,用Jdom 递归生成该目录结构的xml文件 js传值的问题 请问hibernate如何映射双主键?在线等 javabeans的问题 21天學通J2EE 一个struts+sql server得分页(存储过程版) 源码 特急!!!!!关于文件传递的一个问题? 刷新重复提交 修订部分图纸提示“无法提交,事务处理已被取消”
public static File zipFile(String zipName, File[] files) {
File file = new File(zipName); try {
ZipOutputStream out = new ZipOutputStream(file); for(int i = 0; i < files.length; i++) {
if(files[i] == null) {
continue;
} FileInputStream in = new FileInputStream(files[i]);
ZipEntry entry = new ZipEntry(files[i].getName());
out.putNextEntry(entry);
int len = 0;
byte[] bytes = new byte[256]; while((len = in.read(bytes, 0, bytes.length)) != -1) {
out.write(bytes, 0, len);
} out.closeEntry();
in.close();
} out.flush();
out.close();
}
catch(Exception e) {
e.printStackTrace();
} return file;
}
试试。