`
Beaver's
  • 浏览: 390510 次
  • 性别: Icon_minigender_2
  • 来自: 天津
社区版块
存档分类
最新评论

遍历一个文件夹根据文件扩展名将文件分类

阅读更多
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class FileClassify {

	private static void classify(String filePath, String target) {
		try {
			int k = filePath.lastIndexOf("/");
			String fileName = filePath.substring(k);
			File in = new File(filePath);
			target = target + fileName;
			File out = new File(target);
			FileInputStream inFile = new FileInputStream(in);
			FileOutputStream outFile = new FileOutputStream(out);
			byte[] buffer = new byte[1024];
			int i = 0;
			while ((i = inFile.read(buffer)) != -1) {
				outFile.write(buffer, 0, i);
			}
			inFile.close();
			outFile.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public static List bianli(File dir) {
		List fileList = new ArrayList();

		if (!dir.exists()) {
			System.out.println("File dosen't exist:" + dir);
			return null;
		} else if (!dir.isDirectory())
			fileList.add(dir);
		else {
			File[] fe = dir.listFiles();
			for (int i = 0; i < fe.length; i++) {
				if (fe[i].isDirectory())
					fileList.addAll(bianli(fe[i]));
				else
					fileList.add(fe[i]);
			}
		}
		return fileList;
	}

	public static void main(String[] args) throws Exception {

		List files = bianli(new File("F:\\mirror\\"));
		for (int i = 0; i < files.size(); i++) {
			String filePath = ((File) files.get(i)).toURI().toString();// 这里filePath值为file:/F:/mirror/...
			filePath = filePath.substring(6);// 取文件实际路径,即"F:/mirror/..."
			if ((filePath != null) && filePath.length() > 0) {
				int j = filePath.lastIndexOf('.');
				if ((j > -1) && (j < (filePath.length() - 1))) {
					String exn = filePath.substring(j + 1);
					if (exn.equals("wsdl") || exn.equals("asmx")) {
						classify(filePath, "d:/wsdl");
					} else if (exn.equals("htm") || exn.equals("html")) {
						classify(filePath, "d:/htm");
					}

				}
			}
		}
	}
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics