📄 myzipframe.java~10~
字号:
}catch(Exception e){
System.err.println(e);
}
}
/**
*<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(".") );
chooser.setMultiSelectionEnabled(true) ;
chooser.setFileSelectionMode(chooser.FILES_ONLY);
int r =chooser.showOpenDialog(MyZipFrame.this) ;
currentDirectory = chooser.getCurrentDirectory().toString();
selectedFile=chooser.getSelectedFiles().toString() .toString();
System.out.println("SSSS "+selectedFile);
if(r==JFileChooser.APPROVE_OPTION)
{
File[] files = chooser.getSelectedFiles();System.out.println(files.length );
String[] names = new String[files.length+1];
names[0]=files[0].toString() ;
for (int i = 0; i < files.length; i++)
{
names[i+1]=files[i].toString();System.out.println("f "+files[i]);
}
for (int j = 0; j < names.length; j++)
{
System.out.println("nnn"+names[j]);
}
return names;
}
return null;
}
String[] openDirDialog()
{
int numOfFiles=0;
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();
selectedFile=chooser.getSelectedFile() .toString();
dirListing(new File(selectedFile),numOfFiles);
String[] names=new String[record.length +1];
names[0]=selectedFile;
for(int i=1;i<record.length +1;i++)
{
names[i]=record[i-1];
}
if(r==JFileChooser.APPROVE_OPTION)
{
return names;
}
return null;
}
void dirListing(File dir,int numOfFiles)
{
String[] fileList=dir.list();
String dirPath=dir.getAbsolutePath();
for(int i=0;i<fileList.length ;i++)
{
File file=new File(dirPath+"\\"+fileList[i]);
if (file.isFile())
{
record[numOfFiles]=file.getAbsolutePath();
numOfFiles++;
}
else
dirListing(file,numOfFiles);
}
}
void jMenuFileOpenFile_actionPerformed(ActionEvent e) {
files=openFileDialog();
/////////////////进行压缩文件(url),先判断扩展名
//System.out.println(url);
//压缩
//zipFiles(files);
if(files!=null)
{
//zipFiles(files);
}
}
void jMenuFileOpenZip_actionPerformed(ActionEvent e) {
files=openFileDialog();
///////进行解压文件(url),先判断扩展名
//解压
}
void unzipButton_actionPerformed(ActionEvent e) {
files=openFileDialog();
}
void zipButton_actionPerformed(ActionEvent e) {
jMenuFileOpenDir_actionPerformed( e);
}
void openButton_actionPerformed(ActionEvent e) {
//openDialog(openFileDialog());
//解压
}
void jMenuFileOpenDir_actionPerformed(ActionEvent e)
{
files=openDirDialog();
if(files!=null)
{
zipFiles(files);
}
}
}
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 + -