显示文件和目录并使用Java移动它们

问题描述:

我想要创建一个应用程序,将本地文件系统目录中的选定文件移动到另一个“预选位置”并返回到它所来自的目录。我希望它是可视化的,例如我有一个JFrame。在这个JFrame内部有2个'窗口',一个是来自/ home或者任何地方的当前本地文件系统,当你点击它们时,它们显示他们的子文件夹和可以点击的文件等等(就像你打开Windows中的资源管理器或mac中的finder)。右边的另一个窗口是一个已经预选好的空目录,其中没有文件。显示文件和目录并使用Java移动它们

这些窗口之间有两个按钮。一个有' - >'箭头。 '其他'< - '这些按钮将从窗口1中将'selected'目录或文件移动到窗口2(在可视化过程之后,实际文件和/或目录(包括所有子目录)将移动到此位置)。 < - 按钮将它们放回原位。

一个简单的gui,但我不知道如何开始编码这个或什么方法是最好的显示所有的文件,并让他们被选中。

任何想法?

Euden

+1

的的Java Swing教程应该是一个良好的开端处(http://docs.oracle.com/javase/tutorial/uiswing/index.html) – BigMike

+0

参见[文件浏览器GUI(HTTP:// codereview.stackexchange.com/questions/4446/file-browser-gui)获取一些提示。 *“任何想法?”*代码更简单的事情。 –

对于文件移动,可以考虑使用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(); 
} 

我会看看