⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 myzipframe.java~9~

📁 用Java开发的压缩解压缩小工具
💻 JAVA~9~
📖 第 1 页 / 共 2 页
字号:
/**
 *<br>方法说明:解压缩Zip文件
 *<br>输入参数:String fileName 解压zip文件名
 *<br>返回类型:
 */
  public void unZipFile(String fileName){
    try{
       System.out.println("读取ZIP文件........");
       //文件输入流
       FileInputStream fi =
         new FileInputStream(fileName+".zip");
       //输入流检查
       CheckedInputStream csi = new CheckedInputStream(fi,new Adler32());
       //输入流压缩
       ZipInputStream in2 =
         new ZipInputStream(
           new BufferedInputStream(csi));
       ZipEntry ze;
       System.out.println("Checksum::"+csi.getChecksum().getValue());
       //解压全部文件
       while((ze = in2.getNextEntry())!=null){
         System.out.println("Reading file "+ze);
         int x;
         while((x= in2.read())!=-1)
           //这里是写文件,write是以byte方式输出。
           System.out.write(x);
       }
       in2.close();
    }catch(Exception e){
      System.err.println(e);
    }
  }
 /**
 *<br>方法说明:读取Zip文件列表
 *<br>输入参数:String fileName zip文件名
 *<br>返回类型:Vector 文件列表
 */
  public Vector listFile(String fileName){
    try{
       String[] aRst=null;
       Vector vTemp = new Vector();
       //zip文件对象
       ZipFile zf = new ZipFile(fileName+".zip");
       Enumeration e = zf.entries();
       while(e.hasMoreElements()){
         ZipEntry ze2 = (ZipEntry)e.nextElement();
         System.out.println("File: "+ze2);
         vTemp.addElement(ze2);
       }
       return  vTemp;
    }catch(Exception e){
      System.err.println(e);
      return null;
    }
  }
   String[] openFileDialog(){
    JFileChooser chooser = new JFileChooser();
      chooser.setCurrentDirectory(new File(".") );
      //ExtensionFileFilter filter=new ExtensionFileFilter();
      //filter.addExtension(".zip");
      //filter.addExtension(".jar");
      //filter.addExtension(".rar");
      //filter.setDescription("ZIP archives") ;
      //chooser.setFileFilter(filter) ;
      chooser.setMultiSelectionEnabled(true) ;
      chooser.setFileSelectionMode(chooser.FILES_ONLY);
      int r =chooser.showOpenDialog(MyZipFrame.this) ;

      currentDirectory = chooser.getCurrentDirectory().toString();


     if(r==JFileChooser.APPROVE_OPTION)
    {
      File[] files = chooser.getSelectedFiles();
      String[] names = new String[files.length];
      for (int i = 0; i < files.length; i++)
      {
        names[i]=files[i].toString();
      }
      return names;
    }
    return null;
  }
  String[] openDirDialog()
  {
    JFileChooser chooser = new JFileChooser();
    chooser.setCurrentDirectory(new File(".") );
    chooser.setMultiSelectionEnabled(true) ;
    chooser.setFileSelectionMode(chooser.DIRECTORIES_ONLY);
    int r =chooser.showOpenDialog(MyZipFrame.this) ;

    currentDirectory = chooser.getCurrentDirectory().toString();


    if(r==JFileChooser.APPROVE_OPTION)
    {
      File file=chooser.getSelectedFile();
      String[] names=file.list() ;
      return names;
    }
    return null;
  }

  void jMenuFileOpenFile_actionPerformed(ActionEvent e) {
    files=openFileDialog();
     /////////////////进行压缩文件(url),先判断扩展名
     //System.out.println(url);
     //压缩
     //zipFiles(files);
     if(files!=null)
     {
       for (int i = 0; i < files.length; i++) {
         System.out.println(files[i]);
       }
     }

   }

  void jMenuFileOpenZip_actionPerformed(ActionEvent e) {
    //openFileDialog();
     ///////进行解压文件(url),先判断扩展名
     //解压
   }

  void unzipButton_actionPerformed(ActionEvent e) {
    //openDialog(openFileDialog());

  }

  void zipButton_actionPerformed(ActionEvent e) {
    //openDialog(openFileDialog());
    //压缩
    //zipFiles();

  }

  void openButton_actionPerformed(ActionEvent e) {
    //openDialog(openFileDialog());
    //解压

  }


  void jMenuFileOpenDir_actionPerformed(ActionEvent e)
  {
    files=openDirDialog();
    if(files!=null)
    {
      for(int i=0;i<files.length ;i++)
      {
        System.out.println(files[i]);
      }
    }
  }


}


class ExtensionFileFilter extends FileFilter
{
  public void addExtension(String extension)
  {
    if(!extension.startsWith("."))
      extension = "."+extension;
    extensions.add(extension.toLowerCase() );
  }

  public void setDescription(String aDescription)
  {
    description=aDescription;
  }

  public String getDescription()
  {
    return description;
  }
  public boolean accept(File f)
  {
    if(f.isDirectory() ) return true;
    String name=f.getName() .toLowerCase() ;
    for (int i=0;i<extensions.size();i++)
      if(name.endsWith((String)extensions.get(i)))
        return true;
    return false;
  }

  private String description ="";
  private ArrayList extensions = new ArrayList();
}


class MyZipFrame_jMenuFileExit_ActionAdapter implements ActionListener {
  MyZipFrame adaptee;

  MyZipFrame_jMenuFileExit_ActionAdapter(MyZipFrame adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jMenuFileExit_actionPerformed(e);
  }
}

class MyZipFrame_jMenuHelpAbout_ActionAdapter implements ActionListener {
  MyZipFrame adaptee;

  MyZipFrame_jMenuHelpAbout_ActionAdapter(MyZipFrame adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jMenuHelpAbout_actionPerformed(e);
  }
}

class MyZipFrame_jMenuFileOpenFile_actionAdapter implements java.awt.event.ActionListener {
  MyZipFrame adaptee;

  MyZipFrame_jMenuFileOpenFile_actionAdapter(MyZipFrame adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jMenuFileOpenFile_actionPerformed(e);
  }
}

class MyZipFrame_jMenuFileOpenZip_actionAdapter implements java.awt.event.ActionListener {
  MyZipFrame adaptee;

  MyZipFrame_jMenuFileOpenZip_actionAdapter(MyZipFrame adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jMenuFileOpenZip_actionPerformed(e);
  }
}

class MyZipFrame_unzipButton_actionAdapter implements java.awt.event.ActionListener {
  MyZipFrame adaptee;

  MyZipFrame_unzipButton_actionAdapter(MyZipFrame adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.unzipButton_actionPerformed(e);
  }
}

class MyZipFrame_zipButton_actionAdapter implements java.awt.event.ActionListener {
  MyZipFrame adaptee;

  MyZipFrame_zipButton_actionAdapter(MyZipFrame adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.zipButton_actionPerformed(e);
  }
}

class MyZipFrame_openButton_actionAdapter implements java.awt.event.ActionListener {
  MyZipFrame adaptee;

  MyZipFrame_openButton_actionAdapter(MyZipFrame adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.openButton_actionPerformed(e);
  }
}

class MyZipFrame_jMenuFileOpenDir_actionAdapter implements java.awt.event.ActionListener {
  MyZipFrame adaptee;

  MyZipFrame_jMenuFileOpenDir_actionAdapter(MyZipFrame adaptee) {
    this.adaptee = adaptee;
  }
  public void actionPerformed(ActionEvent e) {
    adaptee.jMenuFileOpenDir_actionPerformed(e);
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -