Get user inputted file name from JFileChooser
我有一个奇怪的情况,我想对jfilechooser中文件名的用户输入值执行测试。
.getSelectedFile()函数基于用户输入的文件名值和目录返回一个文件,这不是我想要的。
举个例子:jfilechooser中的当前目录可能是"c:ac"用户输入的值可能是"def.txt"
.getselectedfile()返回"c:acdef.txt".getselectedfile().getname()返回"f.txt"
但是我希望像.getinpuntedFile()这样的东西返回"def.txt"
有没有这样的解决方案,或者我需要扩展jFileChooser?
输入值"def.txt"是相对路径。.getSelectedFile()返回"c:acdef.txt"是逻辑,因为指定的路径追加到当前目录。如果指定一个绝对路径,那么它肯定不会被连接。
据我所知,从所选文件中检索相对路径没有内置方法(但我可能是错的)。
但是你可以通过创建这样的方法来帮助自己:
1 2 3 4 5 6 7 | public static String getRelativeSubdirectory(final File file) { final File currentFolder = new File(""); if (file.getAbsolutePath().startsWith(currentFolder.getAbsolutePath())) { return file.getAbsolutePath().substring(currentFolder.getAbsolutePath().length() + 1); } return file.getAbsolutePath(); } |
此方法接受
这个解决方案与这个答案有很大的相似之处。