【发布时间】:2011-10-20 06:28:54
【问题描述】:
我有一个 java 线程 A,它不断轮询文件夹 RESULTFOLDER 并检查其中是否存在一些新文件。
现在文件由在另一台机器上运行的其他程序发布到 RESULTFOLDER。现在发布的文件都是 xml 文件(只有 xml)。所以在任何时候 RESULTFOLDER 都只能保存 xml 文件。
现在我的线程 A 不断地轮询 RESULTFOLDER 并一次解析一个 xml 文件,然后将其删除。
现在有时会发生的情况是,如果线程 A 在其他程序发布文件 A 时尝试读取和解析文件 A。在这种情况下,我在解析文件时遇到异常。说文件提前结束。
我该如何解决这个问题?
我认为的一种方法是检查文件创建的日期时间并确保文件存在至少 1 分钟左右。但我不认为 java 提供这样的 API。我该如何解决这个问题?
【问题讨论】: