package io;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.FilenameFilter;
import java.io.IOException;
import java.io.Reader;
import java.io.Writer;
import java.util.List;
public class File类 {
/**读取字符串 输出到txt文本
* @param args
* @throws IOException
*/
public static void main(String[] args) throws IOException {
//第一种创建方式
// File file = new File("D:\\new.txt");
//第二种创建方式
// File file2 = new File("D:\\","1.txt");
//第三种创建方式
// File file3 = new File("D:\\");
// File file4 = new File(file3,"1.txt");
//这三种是一样的效果
//创建文件 如果存在,就不创建了
// File file2 = new File("D:\\new\\a.txt");
// System.out.println("creatNewFile:"+file2.createNewFile());
//创建文件夹 E盘创建文件夹 创建成功返回true如果已经存在,就不创建了,返回false
// File file = new File("D:\\new1");
// System.out.println("mkdir:"+file.mkdir());
//多级创建 新建文件夹 如果存在 返回false
// File file = new File("D:\\newMU\\bbb");
// System.out.println("mkdirs:"+file.mkdirs());
//删除文件 删除不走回收站
// File file = new File("D:\\1.txt");
// System.out.println("fileDelete:"+file.delete());
//删除文件夹
// File file = new File("D:\\newMU\\bbb");
// file.delete();
//多级删除文件夹时,必须先删除子层文件、文件夹
//file方法 .renameTo(File file); 路径相同 就是改名 路径不同,就是改名+剪切
/*判断功能
* isDirectory()
* isFile()
* exists()
* canRead()
* canWrite()
* isHidder()
* getAbsolutePath()
* getPath()
* getName()
* length()
* lastModified()
*
* String list() 返回目录下名称数组
* File[] listFiles()返回目录下file数组
*
*/
// File file = new File("D:\\");
// String[] list = file.list();
// for(String s:list){
// System.out.println(s);
// }
// File file = new File("D:\\");
// File[] list = file.listFiles();
// for(File s:list){
// System.out.println(s.getName()+" "+s.getAbsolutePath());
// }
//
//文件名过滤器
//String[] list(FilenameFilter filter)
//String[] listFiles(FilenameFilter filter)
//输出以txt结尾的文件
// File file = new File("D:\\");
// File[] list = file.listFiles();
// for(File f : list){
// if(f.isFile()){
// if(f.getName().endsWith(".txt")){
// System.out.println(f.getName());
// }
// }
//
// }
File file = new File("D:\\");
String[] list = file.list(new FilenameFilter() {
@Override
public boolean accept(File dir, String name) {
File file = new File(dir,name);
// boolean flag = file.isFile();
// boolean flag2 = name.endsWith(".txt");
// return flag && flag2;
return file.isFile() && name.endsWith(".txt");
}
});
for(String s : list){
System.out.println(s);
}
}
}