仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 655|回复: 8
打印 上一主题 下一主题

[学习教程] 了解下JAVA的[JAVA100例]040、紧缩息争压文件

[复制链接]
小女巫 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:21:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
恰恰证明了java的简单,要不怎么没有通过c/c++来搞个这种框架?
//文件名:myZip.java
importjava.io.*;
importjava.util.*;
importjava.util.zip.*;
/**
*<p>Title:文件紧缩息争压</p>
*<p>Description:利用ZipInputStream和ZipOutputStream对文件
*        和目次举行紧缩息争压处置</p>
*<p>Copyright:Copyright(c)2003</p>
*<p>Filename:myZip.java</p>
*@version1.0
*/
publicclassmyZip{
/**
*<br>办法申明:完成文件的紧缩处置
*<br>输出参数:String[]fs紧缩的文件数组
*<br>前往范例:
*/
 publicvoidZipFiles(String[]fs){
 try{
  StringfileName=fs[0];
  FileOutputStreamf=
   newFileOutputStream(fileName+".zip");
  //利用输入流反省
  CheckedOutputStreamcs=
    newCheckedOutputStream(f,newAdler32());
   //声明输入zip流
   ZipOutputStreamout=
    newZipOutputStream(newBufferedOutputStream(cs));
   //写一个正文
   out.setComment("AtestofJavaZipping");
   //对多文件举行紧缩
   for(inti=1;i<fs.length;i++){
    System.out.println("Writefile"+fs[i]);
    BufferedReaderin=
     newBufferedReader(
      newFileReader(fs[i]));
    out.putNextEntry(newZipEntry(fs[i]));
    intc;
    while((c=in.read())!=-1)
     out.write(c);
    in.close();
   }
   //封闭输入流
   out.close();
   System.out.println("Checksum::"+cs.getChecksum().getValue());
  }catch(Exceptione){
   System.err.println(e);
  }
 }
/**
*<br>办法申明:解紧缩Zip文件
*<br>输出参数:StringfileName解压zip文件名
*<br>前往范例:
*/
 publicvoidunZipFile(StringfileName){
  try{
   System.out.println("读取ZIP文件........");
   //文件输出流
   FileInputStreamfi=
    newFileInputStream(fileName+".zip");
   //输出流反省
   CheckedInputStreamcsi=newCheckedInputStream(fi,newAdler32());
   //输出流紧缩
   ZipInputStreamin2=
    newZipInputStream(
     newBufferedInputStream(csi));
   ZipEntryze;
   System.out.println("Checksum::"+csi.getChecksum().getValue());
   //解压全体文件
   while((ze=in2.getNextEntry())!=null){
    System.out.println("Readingfile"+ze);
    intx;
    while((x=in2.read())!=-1)
     //这里是写文件,write是以byte体例输入。
     System.out.write(x);
   }
   in2.close();
  }catch(Exceptione){
   System.err.println(e);
  }
 }
/**
*<br>办法申明:读取Zip文件列表
*<br>输出参数:StringfileNamezip文件名
*<br>前往范例:Vector文件列表
*/
 publicVectorlistFile(StringfileName){
  try{
   String[]aRst=null;
   VectorvTemp=newVector();
   //zip文件对象
   ZipFilezf=newZipFile(fileName+".zip");
   Enumeratione=zf.entries();
   while(e.hasMoreElements()){
    ZipEntryze2=(ZipEntry)e.nextElement();
    System.out.println("File:"+ze2);
    vTemp.addElement(ze2);
   }
   return vTemp;
  }catch(Exceptione){
   System.err.println(e);
   returnnull;
  }
 }
/**
*<br>办法申明:主办法
*<br>输出参数:
*<br>前往范例:
*/
 publicstaticvoidmain(String[]args){
  try{
  StringfileName=args[0];
  myZipmyZip=newmyZip();
  myZip.ZipFiles(args);
  myZip.unZipFile(fileName);
  Vectordd=myZip.listFile(fileName);
  System.out.println("FileList:"+dd);
  }catch(Exceptione){
  e.printStackTrace();
  }
 }
}

j2EE和asp比较,其实也没什么比的,原因和我上面说那些比较差不了多少,也是稳定性,安全性,J2EE比asp高,速度上比不过asp,asp也是延续着它的拖拽控件的方法,提高速度。
老尸 该用户已被删除
沙发
发表于 2015-1-20 21:39:33 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
若天明 该用户已被删除
板凳
发表于 2015-1-25 16:45:57 | 只看该作者
Jive的资料在很多网站上都有,大家可以找来研究一下。相信你读完代码后,会有脱胎换骨的感觉。遗憾的是Jive从2.5以后就不再无条件的开放源代码,同时有licence限制。不过幸好还有中国一流的Java程序员关注它,外国人不开源了,中国人就不能开源吗?这里向大家推荐一个汉化的Jive版本—J道。Jive(J道版)是由中国Java界大名 鼎鼎的banq在Jive 2.1版本基础上改编而成, 全中文,增加了一些实用功能,如贴图,用户头像和用户资料查询等,而且有一个开发团队在不断升级。你可以访问banq的网站
蒙在股里 该用户已被删除
地板
发表于 2015-2-3 10:50:43 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
简单生活 该用户已被删除
5#
发表于 2015-2-8 20:11:31 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
第二个灵魂 该用户已被删除
6#
发表于 2015-2-11 21:06:13 | 只看该作者
Pet Store.(宠物店)是SUN公司为了演示其J2EE编程规范而推出的开放源码的程序,应该很具有权威性,想学J2EE和EJB的朋友不要 错过了。
冷月葬花魂 该用户已被删除
7#
发表于 2015-3-2 19:13:03 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
兰色精灵 该用户已被删除
8#
发表于 2015-3-7 14:10:47 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
山那边是海 该用户已被删除
9#
发表于 2015-3-15 07:29:41 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-10 07:04

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表