需求1 : 指定一个文件夹,而后该文件夹下面全部java文件。
需求2: 指定一个文件夹,而后列出文件夹下面的全部子文件与文件夹,可是格式要以下:
文件:
文件名1
文件名2
文件名3
....
文件夹:
文件夹名1
文件夹名2
文件夹名3java
....ide
package com.file; import java.io.File; import java.io.FilenameFilter; /** * @author 王金龙 * @date 建立时间: 2017-2-9 下午3:49:55 * @version 1.0 */ class MyFilter implements FilenameFilter{ @Override public boolean accept(File dir, String name) { return name.matches(".+\\.java"); } } public class Example { public static void main(String[] args) { /* 通常方法: File file = new File("F:\\java myeclipes workspace\\test17\\src\\cn\\itcast\\map"); File[] listfiles=file.listFiles(); for(File item : listfiles){ if(item.getName().endsWith(".java")&&item.is.File()){ System.out.println(item.getName()); if(item.getName().matches(".+\\.java")&&item.isFile()){ System.out.println(item.getName()); } } */ File dir = new File("F:\\java myeclipes workspace\\test17\\src\\cn\\itcast\\map"); filter(dir); File files = new File("F:\\Photoshop"); File[] listfiles2=files.listFiles(); System.out.println("文件:"); for(File item : listfiles2){ if(item.isFile()){ System.out.println("\t"+item.getName()); } } System.out.println("文件夾"); for(File item : listfiles2){ if(item.isDirectory()){ System.out.println("\t"+item.getName()); } } } public static void filter(File dir){ File[] filter=dir.listFiles(new MyFilter()); System.out.println("全部.java文件以下:"); for(File item : filter){ System.out.println("\t"+item.getName()); } } }