java高级程序设计(第五周)

import java.io.File;

import javax.swing.JList;

public class FileUtils {

private static final File dir = null;
private static Object String;
/**
 * @param args
 * @throws IllegalAccessException 
 */

public static String[] listDirectory(File dir) throws IllegalAccessException{
//判断File对象dir是否存在,使用File类的exists()方法
if(!dir.exists()){
//如果不存在,抛出异常
throw new IllegalAccessException("目录" + dir +"不存在。");
}
//判断dir是否是目录,使用File类的isDirectory()方法
if(!dir.isDirectory()){
throw new IllegalArgumentException(dir + "不是目录");
}

//获得指定目录dir下的文件及子目录并输出(1.list();2.listFiles())

//使用list()方法实现
String[] fileNames = dir.list();
for(String s : fileNames)
    System.out.println(s);

//使用listFiles()方法实现只列出目录下的所有文件名称
File[] files = dir.listFiles();
return fileNames;

}

public static void main(String[] args) {
    // TODO Auto-generated method stub
try {
    FileUtils.listDirectory(new File("D:"));
} catch (IllegalAccessException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
}

}

import javax.swing.;
import javax.swing.border.CompoundBorder;
import javax.swing.border.EmptyBorder;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.
;
import java.io.File;
import java.util.ArrayList;
import java.util.List;

public class FileUtilsFrame {

public static void main(String[] args) throws Exception {
    // TODO Auto-generated method stub
	 final JFrame frm = new JFrame("文件列表");
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

JList<String> jList = new JList<>(FileUtils.listDirectory(new File("D:")));
String[] formats = { "all formats", ".wav", ".au", ".aif" };
JComboBox formatList = new JComboBox(formats);
JScrollPane scrollPane = new JScrollPane(jList);
scrollPane.setColumnHeaderView(new JLabel("文件"));
frm.add(scrollPane, BorderLayout.CENTER);
frm.add(formatList,BorderLayout.NORTH);

JMenuBar mbar = new JMenuBar();
frm.setJMenuBar(mbar);
JMenu m1 = new JMenu("文件");
JMenu m2 = new JMenu("列表");
mbar.add(m1);
mbar.add(m2);

frm.setBounds(400, 200, 400, 300);
frm.setVisible(true);
	
     
    


}

}
原文地址:https://www.cnblogs.com/2014330122wwh/p/5396907.html