📄 myzipframe.java~9~
字号:
/**
*<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 + -