首页 > 代码库 > [转]实现文件压缩
[转]实现文件压缩
/**创建一个压缩文件,from为文件夹路径,to为创建好后压缩文件路径*/ public void CreateZip(String from,String to) throws IOException { List<File>list=getFiles(from); ZipOutputStream out=new ZipOutputStream(new FileOutputStream(new File(to))); for(File f:list) { InputStream in=new FileInputStream(f); String name=getRelName(from,f); ZipEntry en=new ZipEntry(new File(from).getName()+"/"+name); en.setSize(f.length()); out.putNextEntry(en); out.setComment("中文测试"); int len=0; byte[]buffer=new byte[1024]; while(-1!=(len=in.read(buffer))) { out.write(buffer, 0, len); } in.close(); } out.close(); } /**获取文件的相对路径*/ private String getRelName(String from,File f) { // TODO Auto-generated method stub String a=f.getAbsolutePath().replace(from+"\\", ""); a=a.replace("\\", "/"); System.out.println(from+"---"+a); return a; } /**获取路径下所有文件,包括文件夹下的*/ private List<File> getFiles(String sou) { List<File>list=new ArrayList<File>(); File f=new File(sou); File files[]=f.listFiles(); for(File file:files) { if(file.isFile()) { list.add(file); } else { list.addAll(getFiles(file.getPath())); } } return list; }
##########################################
转自:http://blog.csdn.net/liu149339750/article/details/7887701
##########################################
[转]实现文件压缩
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。