import java.io.File; import java.util.ArrayList; public class FileSystem1 { private static ArrayList filelist = new ArrayList();
public static void main(String[] args) {
long a = System.currentTimeMillis(); refreshFileList("E:\\"); System.out.println(System.currentTimeMillis() - a); } public static void refreshFileList(String strPath) { File dir = new File(strPath); File[] files = dir.listFiles();
if (files == null) return; for (int i = 0; i < files.length; i++) { if (files[i].isDirectory()) { refreshFileList(files[i].getAbsolutePath()); } else { String strFileName = files[i].getAbsolutePath().toLowerCase(); System.out.println("---"+strFileName); filelist.add(files[i].getAbsolutePath()); } } } }
import java.io.File; class DirList{ static void getDir(String strPath){ File f = new File(strPath); if (f.isDirectory()){ File file[] = f.listFiles(); for(int i=0;i<file.length;i++){ if (file[i].isDirectory()){ System.out.println("目录\t"+file[i].getPath()); getDir(file[i].getPath()); } if(file[i].isFile()){ System.out.println("文件\t"+file[i].getPath()); } } }
}
public static void main(String[] args) {
String strPath = "E:\\";
这个MFC我会,用的是一个文件查找类,Java应该也有相似的类,你找一下吧
package test5; import java.io.File; public class DirList{ static void getDir(File dir){ File[] files=dir.listFiles(); if(null==files) return; //有些文件受保护 for (File file : files) { if (file.isDirectory()){ System.out.println("目录\t"+file.getPath()); getDir(file); } else{ System.out.println("文件\t"+file.getPath()); } } } public static void main(String[] args) { File dir=new File("E:\\"); getDir(dir); } } 代码已经尽量简洁了
List fileList=new ArrayList();
try {
File file=new File(dirName);
File[] files=file.listFiles();
//FileFilter ff=new FileFilter(files);
for (int i = 0; i < files.length; i++) {
File tempFile=files[i];
if(tempFile.isDirectory()){
String subDirName=tempFile.getPath();
List list=readDirFiles(subDirName);
for (int j = 0; j < list.size(); j++) {
fileList.add(list.get(j));
}
}else{
String fileName=tempFile.getName();
if (!tempFile.isFile()){
continue;
}
fileList.add(tempFile);
}
if(i==(files.length-1)){
return fileList;
}
}
} catch (Exception e) {
e.printStackTrace();
return null;
}
return fileList;
}
public static void main(String[] args){
File root = new File("E:\\");
loop(root);
}
private static void loop(File f){
System.out.println(f.getAbsolutePath());
if(f.isDirectory()){
File[] flist = f.listFiles();
for(File file:flist){
loop(file);
}
}
}
import java.util.ArrayList;
public class FileSystem1 {
private static ArrayList filelist = new ArrayList();
public static void main(String[] args) {
long a = System.currentTimeMillis();
refreshFileList("E:\\");
System.out.println(System.currentTimeMillis() - a);
}
public static void refreshFileList(String strPath) {
File dir = new File(strPath);
File[] files = dir.listFiles();
if (files == null)
return;
for (int i = 0; i < files.length; i++) {
if (files[i].isDirectory()) {
refreshFileList(files[i].getAbsolutePath());
} else {
String strFileName = files[i].getAbsolutePath().toLowerCase();
System.out.println("---"+strFileName);
filelist.add(files[i].getAbsolutePath());
}
}
}
}
import java.io.File;
class DirList{
static void getDir(String strPath){
File f = new File(strPath);
if (f.isDirectory()){
File file[] = f.listFiles();
for(int i=0;i<file.length;i++){
if (file[i].isDirectory()){
System.out.println("目录\t"+file[i].getPath());
getDir(file[i].getPath());
}
if(file[i].isFile()){
System.out.println("文件\t"+file[i].getPath());
}
}
}
}
public static void main(String[] args) {
String strPath = "E:\\";
import java.io.File;
public class DirList{
static void getDir(File dir){
File[] files=dir.listFiles();
if(null==files) return; //有些文件受保护
for (File file : files) {
if (file.isDirectory()){
System.out.println("目录\t"+file.getPath());
getDir(file);
}
else{
System.out.println("文件\t"+file.getPath());
}
}
}
public static void main(String[] args) {
File dir=new File("E:\\");
getDir(dir);
}
}
代码已经尽量简洁了