我想从一个文件夹中创建一个包含文件名的列表,并显示该文件夹中存在的具有特定扩展名的所有文件。我希望列表是可选择的,以便我可以从列表中选择和删除文件或对其进行编辑。我知道如何从文件夹中选择所有文件,但不知道如何在GUI中显示它。
File folder = new File("c:/");
File[] listOfFiles = folder.listFiles();
此示例说明如何枚举目录中的文件并将它们显示在 aJToolBar
和 aJMenu
中。您可以使用Action
,例如RecentFile
来封装行为以在您的ListModel
和中使用ListSelectionListener
。
您从带有扩展名的文件夹中获取所有文件名,并从中构造一个字符串数组。然后使用 JList 在 swing 中填充。例如,如下所示
String options = { "apple.exe", "ball.exe" "cat.exe"};
JList optionList = new JList(options);
希望这会帮助你。
请参阅 JFileChooser(JFileChooser 帮助页面的无耻副本):
JFileChooser chooser = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter(
"JPG & GIF Images", "jpg", "gif");
chooser.setFileFilter(filter);
int returnVal = chooser.showOpenDialog(parent);
if(returnVal == JFileChooser.APPROVE_OPTION) {
System.out.println("You chose to open this file: " +
chooser.getSelectedFile().getName());
}
看到文件名过滤器了吗?
setMultiSelectionEnabled(真);是另一个提示。
位置:java/docs/api/javax/swing/JFileChooser.html