[英]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.