Java获取选定文件夹路径
在应用程序中,im要求用户选择文件夹,但使用下面的代码,im无法将此输入用作变量路径Java获取选定文件夹路径,java,swing,Java,Swing,在应用程序中,im要求用户选择文件夹,但使用下面的代码,im无法将此输入用作变量路径 public class csvtoxls { public static void main() throws IOException { JFileChooser jfc = new JFileChooser(FileSystemView.getFileSystemView().getHomeDirectory()); jfc.setDialogTitle("Wy
public class csvtoxls {
public static void main() throws IOException {
JFileChooser jfc = new JFileChooser(FileSystemView.getFileSystemView().getHomeDirectory());
jfc.setDialogTitle("Wybierz folder do konwersji: ");
jfc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
jfc.setAcceptAllFileFilterUsed(false);
int returnValue = jfc.showSaveDialog(null);
if (returnValue == JFileChooser.APPROVE_OPTION) {
if (jfc.getSelectedFile().isDirectory()) {
System.out.println("You selected the directory: " + jfc.getSelectedFile());
因此,为了实现这一点,我使用了以下函数:
public class getpath {
public static String pickPath(JFileChooser fileChooser)
{
String path = null;
/* create a JFrame to be the parent of the file
* chooser open dialog if you don't do this then
* you may not see the dialog.
*/
JFrame frame = new JFrame();
frame.setAlwaysOnTop(true);
// get the return value from choosing a file
int returnVal = fileChooser.showOpenDialog(frame);
// if the return value says the user picked a file
if (returnVal == JFileChooser.APPROVE_OPTION)
path = fileChooser.getSelectedFile().getPath();
return path;
}
}
变量:
Path workDir = Paths.get(getpath.pickPath(jfc));
这个解决方案的问题是用户必须选择两次文件夹,这很容易导致错误。有没有办法让这条路更容易呢?1)要更快地获得更好的帮助,请发布一个或。2) 请学习常见的Java命名法(命名约定-例如,
EachWordUpperCaseClass
,firstWordLowerCaseMethod()
,firstWordLowerCaseAttribute
,除非它是一个大写常量
),并一致地使用它。第一种方法有什么不起作用?两者都是JFileChooser。。。因此,它们都公开getSelectedFile()以返回路径的字符串值。只要把它放在一个变量的某个地方并使用它就行了。imo它与eclipse的问题,显示编译错误我修复了它发布解决方案:Path workDir=jfc.getSelectedFile().toPath();1) 为了更快地获得更好的帮助,请发布一个or。2) 请学习常见的Java命名法(命名约定-例如,EachWordUpperCaseClass
,firstWordLowerCaseMethod()
,firstWordLowerCaseAttribute
,除非它是一个大写常量
),并一致地使用它。第一种方法有什么不起作用?两者都是JFileChooser。。。因此,它们都公开getSelectedFile()以返回路径的字符串值。只要把它放在一个变量的某个地方并使用它就行了。imo它与eclipse的问题,显示编译错误我修复了它发布解决方案:Path workDir=jfc.getSelectedFile().toPath();