package demo01;
import java.awt.FlowLayout;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.io.File;
import javax.swing.Box;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JTextField;
public class Example02 {
public static void main(String[] args) {
WindowBox wb = new WindowBox();
wb.setTitle("根据目录生成XML文件");
Toolkit tk = Toolkit.getDefaultToolkit();
Image img = tk.createImage(System.getProperty("java.class.path")+File.separator+"zh.png");
wb.setIconImage(img);
}
}
class WindowBox extends JFrame{
private static final long serialVersionUID = -8864423761413947847L;
Box baseBox,box1,box2,box3;
public WindowBox(){
box1 = Box.createVerticalBox();
final JTextField jf = new JTextField(30);
jf.setText(System.getProperty("java.class.path")+File.separator+"zh.png");
box1.add(jf);
box2 = Box.createVerticalBox();
JButton btn1 = new JButton("浏览...");
btn1.addMouseListener(new MyMouseListener(){
@Override
public void mouseClicked(MouseEvent e) {
JFileChooser chooser = new JFileChooser();
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
chooser.setApproveButtonText("确定");
chooser.setApproveButtonToolTipText("确定所选定的文件目录");
int result = chooser.showOpenDialog(baseBox);
File file = null;
if(result == JFileChooser.APPROVE_OPTION){
file = chooser.getSelectedFile();
jf.setText(file.getAbsolutePath());
}
}
});
box2.add(btn1);
box3 = Box.createVerticalBox();
JButton btn2 = new JButton("生成XML");
btn2.addMouseListener(new MyMouseListener(){
@Override
public void mouseClicked(MouseEvent e) {
findAllFiles(jf.getText());
}
});
box3.add(btn2);
baseBox = Box.createHorizontalBox();
baseBox.add(box1);
baseBox.add(Box.createHorizontalStrut(30));
baseBox.add(box2);
baseBox.add(Box.createHorizontalStrut(10));
baseBox.add(box3);
this.setLayout(new FlowLayout());
this.add(baseBox);
this.validate();
this.setBounds(400,400,600,80);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private void findAllFiles(String dir){
File file = new File(dir);
if(!file.exists()){
System.err.println("所选定的文件夹不存在!");
}
File[] files = file.listFiles();
for(File f:files){
if(f.isFile()){
System.err.println(f.getAbsolutePath());
}else{
findAllFiles(f.getAbsolutePath());
}
}
}
}
class MyMouseListener implements MouseListener{
@Override
public void mouseClicked(MouseEvent e) {
}
@Override
public void mousePressed(MouseEvent e) {
}
@Override
public void mouseReleased(MouseEvent e) {
}
@Override
public void mouseEntered(MouseEvent e) {
}
@Override
public void mouseExited(MouseEvent e) {
}
}
import java.awt.FlowLayout;
import java.awt.Image;
import java.awt.Toolkit;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.io.File;
import javax.swing.Box;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JTextField;
public class Example02 {
public static void main(String[] args) {
WindowBox wb = new WindowBox();
wb.setTitle("根据目录生成XML文件");
Toolkit tk = Toolkit.getDefaultToolkit();
Image img = tk.createImage(System.getProperty("java.class.path")+File.separator+"zh.png");
wb.setIconImage(img);
}
}
class WindowBox extends JFrame{
private static final long serialVersionUID = -8864423761413947847L;
Box baseBox,box1,box2,box3;
public WindowBox(){
box1 = Box.createVerticalBox();
final JTextField jf = new JTextField(30);
jf.setText(System.getProperty("java.class.path")+File.separator+"zh.png");
box1.add(jf);
box2 = Box.createVerticalBox();
JButton btn1 = new JButton("浏览...");
btn1.addMouseListener(new MyMouseListener(){
@Override
public void mouseClicked(MouseEvent e) {
JFileChooser chooser = new JFileChooser();
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
chooser.setApproveButtonText("确定");
chooser.setApproveButtonToolTipText("确定所选定的文件目录");
int result = chooser.showOpenDialog(baseBox);
File file = null;
if(result == JFileChooser.APPROVE_OPTION){
file = chooser.getSelectedFile();
jf.setText(file.getAbsolutePath());
}
}
});
box2.add(btn1);
box3 = Box.createVerticalBox();
JButton btn2 = new JButton("生成XML");
btn2.addMouseListener(new MyMouseListener(){
@Override
public void mouseClicked(MouseEvent e) {
findAllFiles(jf.getText());
}
});
box3.add(btn2);
baseBox = Box.createHorizontalBox();
baseBox.add(box1);
baseBox.add(Box.createHorizontalStrut(30));
baseBox.add(box2);
baseBox.add(Box.createHorizontalStrut(10));
baseBox.add(box3);
this.setLayout(new FlowLayout());
this.add(baseBox);
this.validate();
this.setBounds(400,400,600,80);
this.setVisible(true);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private void findAllFiles(String dir){
File file = new File(dir);
if(!file.exists()){
System.err.println("所选定的文件夹不存在!");
}
File[] files = file.listFiles();
for(File f:files){
if(f.isFile()){
System.err.println(f.getAbsolutePath());
}else{
findAllFiles(f.getAbsolutePath());
}
}
}
}
class MyMouseListener implements MouseListener{
@Override
public void mouseClicked(MouseEvent e) {
}
@Override
public void mousePressed(MouseEvent e) {
}
@Override
public void mouseReleased(MouseEvent e) {
}
@Override
public void mouseEntered(MouseEvent e) {
}
@Override
public void mouseExited(MouseEvent e) {
}
}