Java圧縮/解凍ファイルの実現コード
javaでファイルを圧縮/解凍する:
以上は小编が绍介したJava圧縮/解凍ファイルの実现コードです。皆さんに助けてほしいです。もし何か疑问がありましたら、メッセージをください。小编はすぐに返事します。ここでも私たちのサイトを応援してくれてありがとうございます。
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.util.zip.*;
import javax.swing.*;
//
public class ZipExtractDemo extends JFrame{
JFileChooser fileChooser; //
JTextField jtfTarget; //
JButton jbSelected; //
JList files; //
JButton jbExtract; //
ZipFile zFile;
public ZipExtractDemo(){
super(" "); //
fileChooser=new JFileChooser(); //
jtfTarget=new JTextField(13);
jbSelected=new JButton(" ");
jbExtract=new JButton(" ");
files=new JList();
JPanel panel=new JPanel(); //
panel.add(new JLabel(" "));
panel.add(jtfTarget); //
panel.add(jbSelected);
panel.add(jbExtract);
JScrollPane jsp=new JScrollPane(files);
jsp.setBorder(BorderFactory.createEmptyBorder(10,10,10,10)); //
Container container=getContentPane(); //
container.add(panel,BorderLayout.NORTH); //
container.add(jsp,BorderLayout.CENTER);
jbSelected.addActionListener(new ActionListener(){ //
public void actionPerformed(ActionEvent event) {
if (fileChooser.showOpenDialog(ZipExtractDemo.this)==JFileChooser.APPROVE_OPTION){ // ,
String fileName=fileChooser.getSelectedFile().getAbsolutePath(); //
jtfTarget.setText(fileName); //
showFiles(); //
}
}
});
jbExtract.addActionListener(new ActionListener(){ //
public void actionPerformed(ActionEvent event) {
extractFile(files.getSelectedValue().toString()); //
}
});
setSize(350,250); //
setVisible(true); //
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //
}
public void showFiles(){
try{
zFile=new ZipFile(jtfTarget.getText()); //
ZipEntry entry;
Vector vec=new Vector(); //
Enumeration enu=zFile.entries(); //
while (enu.hasMoreElements()){ //
entry=(ZipEntry) enu.nextElement(); //
vec.add(entry.getName()); // Vector
}
files.setListData(vec); //
files.getSelectedValues();
}
catch (Exception ex){
ex.printStackTrace(); //
}
}
public void extractFile(String name){ //
try{
ZipEntry entry=zFile.getEntry(name);
entry.getComment();
entry.getCompressedSize();
entry.getCrc();
entry.isDirectory();
entry.getSize();
entry.getMethod();
InputStream in=zFile.getInputStream(entry); //
File file=new File(name); //
FileOutputStream out=new FileOutputStream(file); //
byte[] buffer=new byte[1024]; //
int length;
while((length = in.read(buffer)) != -1) { //
out.write(buffer, 0, length); //
}
JOptionPane.showMessageDialog(ZipExtractDemo.this," , :"+file.getAbsolutePath());
in.close(); //
out.close(); //
} catch (Exception ex){}
}
public static void main(String[] args){
new ZipExtractDemo();
}
}
締め括りをつける以上は小编が绍介したJava圧縮/解凍ファイルの実现コードです。皆さんに助けてほしいです。もし何か疑问がありましたら、メッセージをください。小编はすぐに返事します。ここでも私たちのサイトを応援してくれてありがとうございます。