我有两个文件夹,比如folder1和folder2。
folder1包含不同类型的文件,如.txt,.doc,.png。所有文件仅发布在此文件夹中。
现在,我想要做的是,只要文件保存在folder1中,该文件的副本就会进入folder2的子文件夹,子文件夹名称应该是该文件的扩展名。即如果abc.txt文件保存在folder1中,则应在folder2内创建txt文件夹(如果txt文件夹不存在),则应在该子文件夹中复制abc.txt。如果我们有xyz.doc文件,那么创建doc文件夹并保存在其中。我想用Java做到这一点。 这应该是平台无关的,我们可以在Window,Linux或Android中复制。
答案 0 :(得分:0)
你可以通过File.list()
& Common's FileUtils
答案 1 :(得分:0)
您可以启动一个频繁检查该文件夹中新文件的线程。该线程包含文件中所有哈希的列表。如果文件不在列表中,则为新文件。然后,您可以将文件复制到新位置。您可以检查哈希值,而不是检查文件的名称。
答案 2 :(得分:0)
你能等待Java 7吗? WatchService非常适合通知新的File
个对象。
从这些JavaDocs的顶部引用:
监视注册对象以进行更改和事件的监视服务。例如,文件管理员可以使用监视服务监视目录以进行更改,以便在创建或删除文件时更新其文件列表的显示。 < / p>
(Oracle的重点,大胆由我。)