显示文件和目录并使用Java移动它们
问题描述:
我想要创建一个应用程序,将本地文件系统目录中的选定文件移动到另一个“预选位置”并返回到它所来自的目录。我希望它是可视化的,例如我有一个JFrame。在这个JFrame内部有2个'窗口',一个是来自/ home或者任何地方的当前本地文件系统,当你点击它们时,它们显示他们的子文件夹和可以点击的文件等等(就像你打开Windows中的资源管理器或mac中的finder)。右边的另一个窗口是一个已经预选好的空目录,其中没有文件。显示文件和目录并使用Java移动它们
这些窗口之间有两个按钮。一个有' - >'箭头。 '其他'< - '这些按钮将从窗口1中将'selected'目录或文件移动到窗口2(在可视化过程之后,实际文件和/或目录(包括所有子目录)将移动到此位置)。 < - 按钮将它们放回原位。
一个简单的gui,但我不知道如何开始编码这个或什么方法是最好的显示所有的文件,并让他们被选中。
任何想法?
Euden
答
对于文件移动,可以考虑使用renameTo
方法File
类。您的代码应该是这样的,
File file = new File(presentLocation);
String newLocation = " NEW_LOCATION "; // your new location
boolean isFileMoved = file.renameTo(new File(newLocation+file.getName())); //tells you whether file is moved or not.
if (isFileMoved) {
System.out.println("File is successfully moved to "+newLocation);
} else {
System.out.println("File is not moved to "+newLocation);
}
使用此文件移动文件旧位置移动到新位置,反之亦然。在用户界面后端实现这一点。
答
这里是我的代码,以深入travserse目录进行递归删除。 您可以使用它来“显示”并导航。
public static boolean deleteDir(File dir) {
if (dir.isDirectory()) {
String[] children = dir.list();
for (int i=0; i<children.length; i++) {
boolean success = deleteDir(new File(dir, children[i]));
if (!success) {
return false;
}
}
}
return dir.delete();
}
的的Java Swing教程应该是一个良好的开端处(http://docs.oracle.com/javase/tutorial/uiswing/index.html) – BigMike
参见[文件浏览器GUI(HTTP:// codereview.stackexchange.com/questions/4446/file-browser-gui)获取一些提示。 *“任何想法?”*代码更简单的事情。 –