JAVA實現開啟檔案對話方塊(可以指定所需開啟檔案的格式)
package com.test.filetest;
import java.io.File;
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileFilter;
public class FileTest {
public static void main(String[] args) {
// 建立檔案選擇器
JFileChooser fileChooser = new JFileChooser();
// 設定當前目錄
fileChooser.setCurrentDirectory(new File("."));
fileChooser.setAcceptAllFileFilterUsed(false);
final String[][] fileENames = { { ".java", "JAVA源程式 檔案(*.java)" },
{ ".doc", "MS-Word 2003 檔案(*.doc)" },
{ ".xls", "MS-Excel 2003 檔案(*.xls)" }
};
// 顯示所有檔案
fileChooser.addChoosableFileFilter(new FileFilter() {
public boolean accept(File file) {
return true;
}
public String getDescription() {
return "所有檔案(*.*)";
}
});
// 迴圈新增需要顯示的檔案
for (final String[] fileEName : fileENames) {
fileChooser.setFileFilter(new javax.swing.filechooser.FileFilter() {
public boolean accept(File file) {
if (file.getName().endsWith(fileEName[0]) || file.isDirectory()) {
return true;
}
return false;
}
public String getDescription() {
return fileEName[1];
}
});
}
fileChooser.showDialog(null, null);
}
}