如何在java中刷新JTree的内容?

如何在java中刷新JTree的内容?,java,swing,jtree,Java,Swing,Jtree,我有一个JTree,它显示特定目录的内容。当一个用户使用ftp下载一些文件到这个目录时,我想让我的JTree知道并刷新他的内容。 在从作为JTree根目录的目录中添加或删除某些文件后,如何刷新JTree btnRefreshContents.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { tree.getModel().

我有一个JTree,它显示特定目录的内容。当一个用户使用ftp下载一些文件到这个目录时,我想让我的JTree知道并刷新他的内容。 在从作为JTree根目录的目录中添加或删除某些文件后,如何刷新JTree

btnRefreshContents.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            tree.getModel().
        }
    });

如果您使用的是Java7,那么可以使用new()来检测对文件系统的更改。这是一个例子


关于更新JTree组件,请看一下。

如果您使用的是Java 7,则可以使用new()来检测对文件系统的更改。这是一个例子


至于更新JTree组件,请看一下。

您可以将目录侦听器添加到基础树模型中。有很多解决方案。如前所述,Java7中的
WatchService
可能很有用。但由于您还不熟悉Java 7,您可以尝试其他方法:

-允许java应用程序侦听文件系统事件的java库。下面是一个(请确保将dll/so依赖项添加到路径中。)


来自apachecommons。Commons VFS为访问各种不同的文件系统提供了一个API。这是一个很好的例子

您可以将目录侦听器添加到基础树模型中。有很多解决方案。如前所述,Java7中的
WatchService
可能很有用。但由于您还不熟悉Java 7,您可以尝试其他方法:

-允许java应用程序侦听文件系统事件的java库。下面是一个(请确保将dll/so依赖项添加到路径中。)


来自apachecommons。Commons VFS为访问各种不同的文件系统提供了一个API。这是一个很好的例子

你是对的,但我没有其他选择。我必须使用Java1.5。在向JTree添加文件后,重新加载具有相同目录的JTree是一个好主意吗?你是对的,但我没有其他选择。我必须使用Java 1.5。在向JTree添加文件后,重新加载具有相同目录的JTree是一个好主意吗?