所以,我正在編寫一個程序,需要遍歷目錄中的所有文件,這是我現在擁有的。如何使用完整文件路徑訪問目錄?
import java.io.File;
import java.util.Scanner;
public class Main {
public static void main(String args[]) throws Exception {
VotingData v = new VotingData();
Scanner in = new Scanner(System.in);
System.out.print("Please input a directory.");
String input = in.next();
File dir = new File(input);
File[] directoryListing = dir.listFiles();
if (directoryListing != null) {
for (File child : directoryListing) {
v.merge(RecordReader.readRecord(child.toString()));
}
}
else {
// do nothing right now.
}
String[] sub1 = {"Montgomery","Miami"};
TextualRepresentation.toString(v.getAllResults());
TextualRepresentation.toString(v.getCountyResults("Montgomery"));
TextualRepresentation.toString(v.getCountyResults("Miami"));
TextualRepresentation.toString(v.getCountyResults("Butler"));
TextualRepresentation.toString(v.getSubsetResults(sub1));
}
}
該項目的文件路徑爲C:\用戶\賈萊特 - 威洛比\文檔\學校\ CSE201 \項目的東西。
我想要的輸入是「C:\ Users \ Jarrett Willoughby \ Documents \ School \ CSE201 \ Project Stuff \ TestFiles」,但它似乎不起作用。但是,當輸入只是「TestFiles」它就是。我希望能夠訪問不同文件夾中的目錄,但出於某種原因,長方法不起作用。
編輯:我不知道錯誤是什麼。我所知道的是,當我將「TestFiles」放入掃描儀時,它工作正常,當我嘗試完整的文件路徑時,它不會崩潰,但它不會產生我想要的結果。
「它似乎不工作」是不是你的問題的一個準確的描述,和你的源代碼並沒有告訴你如何提供文件路徑到您的代碼 - 這可能是您的問題所在。因此,請編輯您的問題,並附上錯誤消息以及您的部分源代碼。我的第一個猜測是你在Java中提供了一個字符串的路徑 - 在這種情況下,你需要加倍所有反斜槓('C:\\ Users \\ Jarret ...'等),因爲反斜槓是一個特殊的轉義字符一個Java字符串。 –
我試過雙反斜槓,它似乎並沒有解決這個問題。 – jmon117