Java检测文件系统的变化

标签 java file filesystems

我有一个文件夹,其中不断有新文件被转储。在Java中,检测文件系统中的更改(即转储文件的指定文件夹)并添加新到达的文件的最佳方法是什么文件到队列数据结构,以便我可以顺序处理每个传入的文件。

我知道 File 类中的 listFiles() 函数,但使用它我只能获取即时可用的文件。当然,我可以连续轮询文件夹并使用线程获取其中的文件列表。但是这是最好的方法还是有更好的方法来完成此任务。

最佳答案

目前在 Java 中持续轮询是实现此目的的方法 - 尽管轮询不要太频繁,但如果目录包含大量条目,这可能是一项相当繁重的操作。

JDK 7 将有一个特定的 API 来执行此操作 java.nio.file.WatchFile

关于Java检测文件系统的变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7463949/

相关文章:

java - 如何计算对象中的某些属性

java - 安装 DBPedia 提取框架

linux - 检查两个目录是否在haskell中的同一文件系统上

ios - 提取的 iPhone 操作系统图像显示为 0x0

c++ - Windows 下使用 C/C++ 的虚拟文件系统

java - 在 Java 中使用比较器对数组进行排序

java - Cobertura Maven 插件在 Windows 上失败并显示 "The command line is too long"

android - 在 Oreo 中共享文件不起作用

c# - 如何在 ASP-NET C# 中从特定路径打开文件?

javascript - 我怎么知道我的 js/CSS 文件是否太大?