【发布时间】:2015-12-22 19:04:52
【问题描述】:
我想确定一个新文件或文档是否放置在使用 java 的特定文件夹/目录中。例如,“C:\Users\User\Documents”目录下没有文件,然后我从网上下载了一个pdf文件并放在上述目录中。如何使用 java 编程语言确定是否在目录中检测到新文件? (它还应该打印出目录名和新文件名)。我可以对如何使用 Java 语言创建这种程序有任何提示吗?它应该是连续的或无限循环的。
我用这个试过了:
package readfilesfromfolder;
import java.io.File;
public class ReadFilesFromFolder {
public static File folder = new File("C:/Documents and Settings/My Documents/Downloads");
static String temp = "";
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("Reading files under the folder "+ folder.getAbsolutePath());
listFilesForFolder(folder);
}
public static void listFilesForFolder(final File folder) {
for (final File fileEntry : folder.listFiles()) {
if (fileEntry.isDirectory()) {
listFilesForFolder(fileEntry);
} else {
if (fileEntry.isFile()) {
temp = fileEntry.getName();
if ((temp.substring(temp.lastIndexOf('.') + 1, temp.length()).toLowerCase()).equals("txt"))
System.out.println("File= " + folder.getAbsolutePath()+ "\\" + fileEntry.getName());
}
}
}
}
}
但是根据结果,它只是访问了目录,但没有列出任何新项目。此外,它还没有进入循环,因为我还没有放置它。谢谢 :) (*注意:我还是 Java 编程新手 :) *)
【问题讨论】:
-
查看link
-
使用
WatchService:docs.oracle.com/javase/7/docs/api/java/nio/file/… -
哦,谢谢 :) 会阅读并研究那个。 :)