
压缩解压
发布日期:2021-05-06 20:24:13
浏览次数:8
分类:技术文章
本文共 2059 字,大约阅读时间需要 6 分钟。
package KOBE;
import java.io.File;
import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; import java.util.zip.ZipOutputStream;public class zipys {
static void compress() { File bys=new File(“zip”); File ysb=new File(“mr.zip”); try { FileOutputStream fo=new FileOutputStream(ysb); //输出到ysb文件中 ZipOutputStream zo=new ZipOutputStream(fo); //感觉是:压缩fo。 if(bys.isDirectory()) { for(File f:bys.listFiles()) { addentry(zo, “”, f); } }else { addentry(zo, “”, bys); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } } static void addentry(ZipOutputStream zo,String base,File bys) { //创建条目的方法 if(bys.isDirectory()) { for(File file:bys.listFiles()) { addentry(zo, base+bys.getName()+File.separator,file); } }else { //压缩的方法 byte by[]=new byte[1024]; try { FileInputStream fi=new FileInputStream(bys); int count=-1; zo.putNextEntry(new ZipEntry(base+bys.getName())); while((count=fi.read(by))!=-1) { zo.write(by); zo.flush(); } zo.closeEntry(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } static void decompress() { File dir=new File(“zip2”); File yuan=new File(“qyb.zip”); byte b[]=new byte[1024]; try { FileInputStream fi=new FileInputStream(yuan); ZipInputStream zis=new ZipInputStream(fi); while(true) { ZipEntry en=zis.getNextEntry(); File f=new File(dir,en.getName()) ; //把创建的条目,放到dir文件中 if(!f.getParentFile().exists()) { f.getParentFile().mkdirs(); } int count=-1; FileOutputStream fo=new FileOutputStream(f); while((count=zis.read(b))!=-1) { fo.write(b); fo.flush(); } fo.close(); zis.closeEntry(); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void main(String[] args) { decompress(); } }发表评论
最新留言
表示我来过!
[***.240.166.169]2025年03月13日 21时50分51秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
NodeJS下TypeScript环境安装
2019-03-01
汽车后市场,小程序为何独占鳌头
2019-03-01
短视频小程序,互联网新风口
2019-03-01
彻底弄懂Python标准库源码(一)—— os模块
2019-03-01
Mybatis-plus代码生成器模板(MySQL数据库)
2019-03-01
使用redis管理Mybatis的二级缓存
2019-03-01
使用redis管理Mybatis-Plus的二级缓存
2019-03-01
Mybatis中的SQL语句等于、不等于和模糊查询的语法
2019-03-01
使用 github 搜索
2019-03-01
java有包名的类访问没有包名的类
2019-03-01
Python循环语句代码逐行详解:while、for、break和continue
2019-03-01
整型关键字的散列映射
2019-03-03
多位水仙花数-python(出现运行超时?不妨用减法计算)
2019-03-03
地下迷宫探索(后两个测试点无法通过?这里有你想要的答案)
2019-03-03
小白看完都会了!阿里云大师深入拆解Java虚拟机,看完这一篇你就懂了
2019-03-03
【IT之路】FAQ-Hibernate报错:表不存在
2019-03-03
VBA之正则表达式(19)-- 相对引用转绝对引用
2019-03-03
巧用VBA统一数字单位
2019-03-03
Transpose实现数组行列转置的限制
2019-03-03
用float/double作为中转类型的“雷区”
2019-03-03