易截截图软件、单文件、免安装、纯绿色、仅160KB

java 压缩与解压

     近来在做JAVA时用到文件的压缩与解压,其中碰到了个问题:先用JAVA代码打包好的JAR文件经过C#的zlib处理后,竟然不能修改!
     网上找了好些代码都不可行,JAVA创建的JAR包在修改的时候可以发现开始有个路径符'/'或'\',虽然在此可以修改JAR文件,但是总觉得隐患出在这,后来的事实也证明了这点.不过还好,后来找到了个不错的代码,避免了此现象的发生.贴上代码.
import java.io.*;
import java.util.*;
import java.util.logging.Level;
import java.util.logging.Logger;
import java.util.zip.*;
public class Zip {
/**
* 压缩文件夹
* @param baseDir 待压缩目录
* @param output 压缩文件名
*/
public static void CreateZip(String baseDir, String output) {
ZipOutputStream zos = null;
try {
List fileList = getSubFiles(new File(baseDir));
zos = new ZipOutputStream(new FileOutputStream(output));
ZipEntry ze = null;
byte[] buf = new byte[1024];
int readLen = 0;
for (int i = 0; i < fileList.size(); i++) {
File f = (File) fileList.get(i);
//创建一个ZipEntry,并设置Name和其它的一些属性
ze = new ZipEntry(getAbsFileName(baseDir, f));
ze.setSize(f.length());
ze.setTime(f.lastModified());
//将ZipEntry加到zos中,再写入实际的文件内容
zos.putNextEntry(ze);
InputStream is = new BufferedInputStream(new FileInputStream(f));
while ((readLen = is.read(buf, 0, 1024)) != -1) {
zos.write(buf, 0, readLen);
}
is.close();
}
zos.close();
} catch (Exception ex) {
Logger.getLogger(Zip.class.getName()).log(Level.SEVERE, null, ex);
} finally {
try {
zos.close();
} catch (IOException ex) {
Logger.getLogger(Zip.class.getName()).log(Level.SEVERE, null, ex);
}


相关文档:

[转载]关于Java IO流学习总结

    一、IO流的三种分类方式
    1.按流的方向分为:输入流和输出流
    2.按流的数据单位不同分为:字节流和字符流
    3.按流的功能不同分为:节点流和处理流
    二、IO流的四大抽象类:
    字符流:Reader Writer
& ......

java 列出斐波那契数列的前n项

public class Fibonacci {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub

NumOfFibonacci(9);
}

public static int MyFibonacci(int i){
if(i>0) {
if(i == 1)return 1;
if(i == 2)return 1;
else return MyFibonacc ......

java中this关键字用法

 /**
* this关键字用法
*/
public class Flower {

int petalCount = 0;
String s = "initial value";

Flower(int petals){
petalCount = petals;
System.out.println("Constructor with one int arg");
}

Flower(String ss){
System.out.println("Constr ......

关于 Java 中的接口


 接口中不可以定义构造方法
接口中只能有 public static final 的变量 和 public abstract 的方法,其它都不可以。
例如:
代码里是这样写的
public interface B{
   
    StringBuilder sb=null;
     
    void fun();
  & ......

1、怎样学习Java?

 1.了解Java的原理:
       首先要了解整个Java的大致结构、工作环境、历史。在这个过程中要搞明白Java从源代码到最后虚拟机里面执行的一个过程是怎样的。
2.学习Java语法:
      Java里面只有50多个关键字和一些运算符。语法结构就只有顺序、条件、循环 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号