我会构建一个面板,让我选择保存文件的位置。我阅读了java文档,我看到有一个名为文件选择器的swing组件,但我不知道如何使用它。我想要做的是选择保存文件的机器中的路径。
答案 0 :(得分:2)
如何使用它?好吧,你只需要“使用它”!真!
这将创建您的FileChooser实例并将其设置为从用户的桌面文件夹开始:
JFileChooser fc = new JFileChooser(System.getProperty("user.home") + "/Desktop");
之后,您可以设置各种选项。在这种情况下,我将其设置为允许选择多个文件,并且仅设置“.xls”(Excel)文件:
fc.setMultiSelectionEnabled(true);
SelectionEnabled(true);
FileFilter ff = new FileFilter() {
@Override
public boolean accept(File f) {
if (f.isDirectory()) {
return true;
}
String extension = f.getName().substring(f.getName().lastIndexOf("."));
if (extension != null) {
if (extension.equalsIgnoreCase(".xls")) {
return true;
} else {
return false;
}
}
return false;
}
@Override
public String getDescription() {
return "Arquivos Excel (\'.xls\')";
}
};
fc.setFileFilter(ff);
最后,我正在展示它并获得用户的选择和选择的文件:
File[] chosenFiles;
int choice = fc.showOpenDialog(fc);
if (choice == JFileChooser.APPROVE_OPTION) {
chosenFiles = fc.getSelectedFiles();
} else {
//User canceled. Do whatever is appropriate in this case.
}
享受!祝你好运!
答案 1 :(得分:1)
这个tutorial直接来自Oracle网站,是开始学习FileChoosers的好地方。
final JFileChooser fc = new JFileChooser();
int returnVal = fc.showOpenDialog(this);
if (returnVal == JFileChooser.APPROVE_OPTION) {
File file = fc.getSelectedFile();
//This is where a real application would open the file.
log.append("Opening: " + file.getName() + ".");
} else {
log.append("Open command cancelled by user.");
}
上面的代码打开了一个FileChooser,并将所选文件存储在fc
变量中。所选按钮(确定,取消等)存储在returnVal
中。然后,您可以使用该文件执行任何操作。