[英]Java - How to read all files in the same directory
我需要讀取同一目錄中的所有文件並將這些文件存儲在列表中。 所有文件都以.txt
結尾,沒有子目錄。
List<String> recipe = new ArrayList<>();
try {
recipe = Files.readAllLines(Paths.get("gyro.txt"));
}
您可以獲得一個文件數組(根據指定的文件夾),之后您可以遍歷文件夾中的每個文件並添加文件中的所有字符。 您能否嘗試使用以下代碼:
public static List<String> readFromAllFilesInDirectory(final String folderName) {
File folder = new File(folderName);
List<String> recipe = new ArrayList<>();
for (final File file : Objects.requireNonNull(folder.listFiles())) {
if (!file.isDirectory()) {
try {
recipe.addAll(Files.readAllLines(Paths.get(file.getPath())));
} catch (Exception e) {
}
}
}
return recipe;
}
public static void main(String[] args) {
File folder = new File("G:\\B\\1.txt");
System.out.println(readFromAllFilesInDirectory(folder.getParent()));
}
嘗試使用 FileNameFilter class: Java FileNameFilter 接口有方法boolean accept(File dir, String name)
應該實現,並且每個文件都經過測試以包含在文件列表中。
File directory = new File("D://");
File[] files = directory.listFiles(new FilenameFilter() {
public boolean accept(File dir, String name) {
return name.toLowerCase().endsWith(".txt");
}
});
for (File file : files) {
System.out.println(file.getAbsolutePath());
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.