该代码将文件与目录分开。
我正在尝试过滤掉文本文件(.txt)并打印出剩余的文件。
我根本不想打印文本文件。我希望代码在 if 语句 if (listOfFiles[i].isFile()) {
之后实现,因此在检查给定值是否是实际文件,然后确定它是否是是一个文本文件,如果任一测试失败,请将其添加到 listOfFiles
数组列表中。
需要帮助
import java.io.BufferedInputStream;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class Exc_3 {
public static void main(String[] args) {
File folder = new File("C:\\Users\\skyla\\Desktop");
File[] listOfFiles = folder.listFiles();
List<String> files = new ArrayList<>();
List<String> directories = new ArrayList<>();
for (int i = 0; i < listOfFiles.length; i++) {
if (listOfFiles[i].isFile()) {
files.add(listOfFiles[i].getName());
} else if (listOfFiles[i].isDirectory()) {
directories.add(listOfFiles[i].getName());
}
}
System.out.println("List of files :\n---------------");
for (String fName : files)
System.out.println(fName);
System.out.println("\nList of directories :\n---------------------");
for (String dName : directories)
System.out.println(dName);
}
}
最佳答案
由于您只是检查文件扩展名是否为“.txt”,因此您可以使用 String.endsWith(".txt") 检查名称
if (listOfFiles[i].isFile()) {
if (listOfFiles[i].getName().endsWith(".txt")) {
files.add(listOfFiles[i].getName());
}
}
关于java - 过滤掉文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60240193/