根据创建/修改时间将文件从一个文件夹移动到另一个文件夹

时间:2016-08-21 04:22:50

标签: java file date

我正在尝试编写一个java程序,它会根据创建/修改日期将一些xml文件从一个文件夹移动到另一个文件夹。

例如,输入将是(DD-MM-YYYY:HH:mm:ss

start date : 21-09-2016:00:00:00
End date : 21-09-2016:11:00:00

请您举一个例子吗?

提前致谢

1 个答案:

答案 0 :(得分:0)

我假设您将XML文件放在目录中(也可能是目录层次结构)。您基本上需要执行以下操作:

  1. 使用深度优先搜索遍历目录,以获取目录中任何级别下的所有XML文件。您可以找到如何执行此操作here
  2. 对于每个java.nio.file.Path,您可以获得BasicFileAttributesBasicFileAttributes类包含有关基本文件属性的所有必需信息,例如创建日期,修改日期等。以下代码段可帮助您获取路径的BasicFileAttributes

    路径文件; //将此文件变量初始化为您在上面的DFS逻辑中获得的路径

    BasicFileAttributes attrs = Files.readAttributes(file,BasicFileAttributes.class);

  3. 您现在可以从attrs获取创建/修改时间 变量并将其与指定的日期进行比较。这将是 建议将日期输入转换为毫秒 程序开头的表示,以便您可以 更自然地进行比较。根据结果 然后,您可以将XML文件移动到另一个位置。

  4. 确保您在try-with-finally区块内完成上述操作,并在需要时抓住IOException

    希望这有帮助。