在Java中读取多个文件
我想一次将多个文件读入Java。文件名如下:在Java中读取多个文件,java,filenames,readfile,Java,Filenames,Readfile,我想一次将多个文件读入Java。文件名如下: nnnn_UM2012.txt ghkjdf_UM2045.txt erey_UM2189.txt 有1000多个文件,我不想用Java逐个编写所有文件名,代码类似于以下代码: String fileNames = {"nnnnn_UM2012.txt","ghkjdf_UM2045.txt","erey_UM2189.txt", …} 也许文件名应该以相反的顺序读取。我该怎么做 您可以使用方法获取文件夹中的所有文件。File rep=new
- nnnn_UM2012.txt
- ghkjdf_UM2045.txt
- erey_UM2189.txt
String fileNames = {"nnnnn_UM2012.txt","ghkjdf_UM2045.txt","erey_UM2189.txt", …}
也许文件名应该以相反的顺序读取。我该怎么做 您可以使用方法获取文件夹中的所有文件。File rep=new File(“rep路径”);
File rep = new File("path to rep");
File[] list = rep.listFiles();
ArrayList<String> filenames = new ArrayList<String>();
for ( int i = 0; i < list.length; i++) {
filenames.add(list[i].getName());
}
File[]list=rep.listFiles();
ArrayList文件名=新的ArrayList();
for(int i=0;i
我想这可以解决您的问题。获取文件夹中的所有文件(子文件夹包含在文件列表中):
//获取文件夹中的所有文件
最终文件文件夹=新文件(“.”);
最终列表fileList=Arrays.asList(folder.listFiles());
要获取文件夹中的所有文件(不包括子文件夹),请执行以下操作:
// get all files in the folder excluding sub-folders
final File folder = new File(".");
final List<File> fileList = Arrays.asList(folder.listFiles(new FileFilter() {
public boolean accept(File pathname) {
return pathname.isFile();
}
}));
//获取文件夹中除子文件夹以外的所有文件
最终文件文件夹=新文件(“.”);
最终列表fileList=Arrays.asList(folder.listFiles(newfilefilter()){
公共布尔接受(文件路径名){
返回路径名.isFile();
}
}));
要将文件列表按区分大小写的相反顺序排序,请执行以下操作:
// sort the files into reverse order
Collections.sort(fileList, new Comparator<File>() {
public int compare(File o1, File o2) {
return o2.getName().compareTo(o1.getName());
}
});
// sort the files into reverse order ignoring case
Collections.sort(fileList, new Comparator<File>() {
public int compare(File o1, File o2) {
return o2.getName().compareToIgnoreCase(o1.getName());
}
});
//将文件按相反顺序排序
Collections.sort(fileList,newcomparator(){
公共整数比较(文件o1、文件o2){
返回o2.getName().compareTo(o1.getName());
}
});
要将文件列表按不区分大小写的相反顺序排序,请执行以下操作:
// sort the files into reverse order
Collections.sort(fileList, new Comparator<File>() {
public int compare(File o1, File o2) {
return o2.getName().compareTo(o1.getName());
}
});
// sort the files into reverse order ignoring case
Collections.sort(fileList, new Comparator<File>() {
public int compare(File o1, File o2) {
return o2.getName().compareToIgnoreCase(o1.getName());
}
});
//将文件按相反顺序排序忽略大小写
Collections.sort(fileList,newcomparator(){
公共整数比较(文件o1、文件o2){
返回o2.getName().compareToIgnoreCase(o1.getName());
}
});
如果所有文件都在一个目录中,则可以采用以下方法。
通过提供目录的完全限定路径获取对目录的引用,然后使用list()
函数将所有文件名放入目录中的字符串
数组中
完成此步骤后,您可以根据需要对文件进行排序(例如,按名称、长度等)。下面的答案显示了如何获取文件夹中的所有文件名。如果您对颠倒顺序有疑问,请澄清。最好写成
Arrays.asList(rep.listFiles())代码>变成asList(rep.listFiles())代码>使用静态导入。