[英]File vs Random Access File in java
我需要搜索目录并获取其中的所有文件。 所以我以前将文件存储在File数组中。 我的问题是
1)数组是否包含实际文件或对文件的引用? 2)哪个是最好的选择File或RandomAcessFile? 为什么这样 ?
请帮我这个我的代码
public File[] getAllFiles(String path) {
File file = new File(path);
if (file.isDirectory() && file.exists()) {
allFiles = file.listFiles();
System.out.println("Files in the directory " + file.getName()
+ " present in the path " + file.getAbsolutePath()
+ " are fetched sucessfully");
printAllFiles(allFiles);
}
return allFiles;
}
public void printAllFiles(File data[]) {
int count = 0;
for (File i : data) {
System.out.println("Index : " + count + " Name : " + i.getName());
count++;
}
}
File
是可能存在或可能不存在的文件/目录的抽象表示。 它不会消耗任何资源,因此您可以根据需要存储它们。
RandomAccessFile
用于实际的文件访问(读取,查找,写入),因此您在这里不需要它。
1)像Java变量那样的Java变量,您的数组包含其中一个,永远不是对象。 它们仅指向保存在磁盘上某处的对象。 因此,您的文件阵列仅指向磁盘上的某些文件对象。 但是File对象也不是File。 它们仅包含文件的路径并指向该文件。
所以不,他们只指向文件
1)file.listFiles该方法返回此抽象路径名表示的目录中文件和目录的路径名数组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.