package com.myapp;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.ScrollPane;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
public class DelFolder extends JFrame {
/**
*
*/
private static final long serialVersionUID = 1L;
private JTextArea outputArea;
private JButton button;
public DelFolder() {
super("Testing class File");
button = new JButton("Delete folder name _svn");
ButtonHandler handler = new ButtonHandler();
button.addActionListener(handler);
outputArea = new JTextArea();
outputArea.setLineWrap(true);
ScrollPane scrollPane = new ScrollPane();
scrollPane.add(outputArea);
Container container = getContentPane();
container.add(button, BorderLayout.NORTH);
container.add(scrollPane, BorderLayout.CENTER);
setSize(600, 600);
setVisible(true);
}
private void OpenFolder() {
// TODO Auto-generated method stub
JFileChooser fileChooser = new JFileChooser();
fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
int result = fileChooser.showOpenDialog(this);
if (result == JFileChooser.CANCEL_OPTION)
return;
File fileName = fileChooser.getSelectedFile();
if (fileName == null || fileName.getName().equals(""))
JOptionPane.showMessageDialog(this, "Invalid File Name", "Invalid File Name", JOptionPane.ERROR_MESSAGE);
else {
deleteFolder(fileName);
}
}
private void deleteFolder(File fileName) {
// TODO Auto-generated method stub
File[] flist = fileName.listFiles();
for (int i = 0; i < flist.length; i ++) {
File tmp = flist[i];
if (tmp.isDirectory()) {
if (tmp.getName().equals("delfolder")) {
delsvn(tmp);
tmp.delete();
} else {
deleteFolder(tmp);
}
}
}
}
private void delsvn(File tmp) {
// TODO Auto-generated method stub
File[] svnlist = tmp.listFiles();
for (int i = 0; i < svnlist.length; i ++) {
File dfile = svnlist[i];
if (dfile.isDirectory()) {
delsvn(dfile);
dfile.delete();
} else {
dfile.delete();
}
}
}
public static void main(String[] args) {
DelFolder app = new DelFolder();
app.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
}
private class ButtonHandler implements ActionListener {
public void actionPerformed(ActionEvent arg0) {
OpenFolder();
outputArea.setText("delete complete !");
}
}
}
阅读(811) | 评论(0) | 转发(0) |