天天看点

java代码查询文件

代码:

import java.io.File;
import java.util.List;
import java.util.ArrayList;

/**
 * 搜索文件
 * @author Administrator
 *
 */
public class ScanFile {
	
	private List<String> fileNameList = new ArrayList<String>();
	
	/**
	 * 查找某文件夹下的某文件
	 * @param file
	 * @param xmlName
	 */
	private void GetFileName(File file,String xmlName){
		//判断文件存在
		if(null!=file&&file.exists()){
			//判断文件是目录
			if(file.isDirectory()){
				//列出该路径下所有文件
				File[] fileArray=file.listFiles();
				//判断该文档目录是否为空
				if(fileArray!=null){
					//遍历该文档目录下所有文件
					for (int i = 0; i < fileArray.length; i++) {
                        //递归调用
						GetFileName(fileArray[i],xmlName);
                    }
				}
			}else{
				if(file.getName().equalsIgnoreCase(xmlName))
					fileNameList.add(file.getAbsolutePath());
			}
		}
	}
	
	/**
	 * 获取文件绝对路径
	 * @param file	扫描文件夹
	 * @param xmlName	目标全名
	 * @return
	 */
	public List<String> getFileNameList(File file,String xmlName) {
		GetFileName(file,xmlName);
		return fileNameList;
	}
}