只读可见目录的文件名
Read only visibles directory´s file names
我试图读取文件夹的文件名并将它们保存在数组列表中,但我在我的数组中得到了我不想要的不可见文件名(实际上我只想保存 .txt 文件名)。有谁知道在创建列表之前在代码中更改它吗?
String pathLevel= "/Users/MaxRuizTagle/Desktop/lvl/";
File file = new File(pathLevel);
String [] levelNames = file.list();
String [] matrix= new String[levelNames.length];
使用java.nio.file。使用 Java 8:
final Path dir = Paths.get("/Users/MaxRuizTagle/Desktop/lvl/");
final List<String> textFiles = Files.list(dir)
.filter(path -> !Files.isHidden(path))
.map(path -> path.getFileName().toString())
.filter(s -> s.endsWith(".txt"))
.collect(Collectors.toList());
如果Java 7,与Files.newDirectoryStream()
做等价的:
final Path dir = Paths.get("/Users/MaxRuizTagle/Desktop/lvl/");
final DirectoryStream<Path> dirstream
= Files.newDirectoryStream(dir, "*.txt");
final List<String> textFiles = new ArrayList<>();
for (final Path entry: dirstream)
if (!Files.isHidden(entry))
textFiles.add(entry.getFileName().toString());
我试图读取文件夹的文件名并将它们保存在数组列表中,但我在我的数组中得到了我不想要的不可见文件名(实际上我只想保存 .txt 文件名)。有谁知道在创建列表之前在代码中更改它吗?
String pathLevel= "/Users/MaxRuizTagle/Desktop/lvl/";
File file = new File(pathLevel);
String [] levelNames = file.list();
String [] matrix= new String[levelNames.length];
使用java.nio.file。使用 Java 8:
final Path dir = Paths.get("/Users/MaxRuizTagle/Desktop/lvl/");
final List<String> textFiles = Files.list(dir)
.filter(path -> !Files.isHidden(path))
.map(path -> path.getFileName().toString())
.filter(s -> s.endsWith(".txt"))
.collect(Collectors.toList());
如果Java 7,与Files.newDirectoryStream()
做等价的:
final Path dir = Paths.get("/Users/MaxRuizTagle/Desktop/lvl/");
final DirectoryStream<Path> dirstream
= Files.newDirectoryStream(dir, "*.txt");
final List<String> textFiles = new ArrayList<>();
for (final Path entry: dirstream)
if (!Files.isHidden(entry))
textFiles.add(entry.getFileName().toString());