java JFIlechooser +资源​​目录

时间:2011-07-04 09:41:56

标签: java swing jfilechooser

我可以将JFileChooser's路径重定向到我的应用程序中的我的资源目录吗?

5 个答案:

答案 0 :(得分:3)

您可以定义JFileChooser以在指定目录中开始:

JFileChooser fileChooser = new JFileChooser(new File("your directory")) 

答案 1 :(得分:2)

你可能想要:

// returns the current working directory as a String
System.getProperty("user.dir");

与JFileChooser实例化结合使用:

String workingdir = System.getProperty("user.dir");
JFileChooser fileChooser = new JFileChooser(new File(workingdir));

以防上述内容并不总是返回您想要的目录(我会尝试从几个不同的位置运行该应用程序),那么这里有一些替代方案:

Get the application's path

答案 2 :(得分:1)

你可以这样做(正如Giann所说):

JFileChooser fileChooser = new JFileChooser(new File("your directory"));

JFileChooser fileChooser = new JFileChooser().setCurrentDirectory(new File("your directory"));
// or in 2 lines
JFileChooser fileChooser = new JFileChooser();
fileChooser.setCurrentDirectory(new File("your directory"));

答案 3 :(得分:0)

我不太确定我完全理解你想要实现的目标,但也许你可以包装FileSystemView并重写getParentDirectory(...)以再次返回同一目录。然后拨打setFileSystemView(...)上的JFileChooser。但是请注意,存在FileSystemView的平台相关子类,你应该小心搞乱这个。

编辑:可能还有其他方式,例如:覆盖JFileChooser#setCurrentDirectory()或创建自己的用户界面,但我不建议继续使用其中任何一种,甚至不是FileSystemView方法。


一个选项可能是创建自己的对话框,只显示一个目录的文件。 这可能更容易,至少更易于维护,因为实现应该非常简单。

答案 4 :(得分:0)

使用JFileChooser对象的setCurrentDirectory(File dir)方法,在paremeter中设置目录File对象。然后你做到了。