java file操作 过滤文件名 过滤文件类型

package com.wowowo.file;

import java.io.File;
import java.io.FilenameFilter;

public class TestFile3 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub

		File file=new File("d:/aa/bb");
		
		//创建目录
		file.mkdir();  
		//判断是否是目录
		System.out.println(file.isDirectory());
		
		System.out.println(file.exists());
		//删除
		file.delete();
		
		//读取目录中的内容
		File file2=new File("d:/aa");
		
		//返回的是当前目录中的文件名和文件夹名(里层的不能读取)
		String[] filenamearr= file2.list();
		
		for(String filename:filenamearr)
			System.out.println(filename);
		
		//返回的是当前目录中所有的文件和文件夹对象(里层的不能读取)
		File[] filearr=file2.listFiles();
		
		System.out.println("过滤前=======================");
		for(File f:filearr)
		{
			System.out.println(f.getName());
		}
		
        //过滤文件名 只保留.java文件
		File[] filebrr=file2.listFiles(new MyFilter());
		
		System.out.println("过滤文件名后=======================");
		for(File f:filebrr)
		{
			System.out.println(f.getName());
		}
		
		
		System.out.println("过滤文件类型后=======================");
		//过滤文件类型 只保留文件夹
		File[] filecrr=file2.listFiles(new MyFilter2());
		
	    for(File f:filecrr)
	    	System.out.println(f.getName());
		
	}
	
}

package com.wowowo.file;

import java.io.File;
import java.io.FilenameFilter;

//创建一个过滤器类,指定 只有后缀名为.java的才返回 否则不返回
public class MyFilter implements FilenameFilter {

	@Override
	public boolean accept(File dir, String name) {
		// TODO Auto-generated method stub
		
		return name.endsWith(".java");
		
	}

}

package com.wowowo.file;

import java.io.File;
import java.io.FileFilter;

//创建过滤器  定义规则  比如只返回目录文件
public class MyFilter2 implements FileFilter{

	@Override
	public boolean accept(File file) {
		// TODO Auto-generated method stub
		return file.isDirectory();
	}

}

你可能感兴趣的:(Mac开发,java,jvm,开发语言)