IO概述:
把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操作
把持久设备上的数据读取到内存中的这个动作称为输入(读)Input操作
我们把这种输入和输出动作称为IO操作
File类:
file是文件、目录、路径的抽象表现形式
public static void main(String[] args) {
//File类: //文件:file //目录(文件夹):directory //路径:path //与系统有关的路径分隔符 (win ;) (linux :) System.out.println(File.pathSeparator); //与系统有关的路径名称分隔符 (win \) (linux /) System.out.println(File.separator); }
public static void main(String[] args) {
File file=new File("D:\\java\\a.txt"); System.out.println(file);//将Test22文件封装成File对象。注意;有可以封装不存在文件或者文件夹,变成对象File file2=new File("D:\\java","a.txt");
System.out.println(file2);//将parent封装成file对象File parent=new File("D:\\java");
File file3=new File(parent,"a.txt"); System.out.println(file3); }
File类的获取:
public static void main(String[] args) throws IOException {
method01(); //method02(); //method03(); //method04(); method05(); } public static void method01(){ File file=new File("D:\\java\\a.txt"); //获取文件对象的绝对路径 //相对路径:D:\eclipsework\Day16\src System.out.println(file.getAbsolutePath()); //获取文件对象的文件名或目录名 System.out.println(file.getName()); //获取文件对象的路径所对应的字符串 System.out.println(file.getPath()); //获取文件的长度 System.out.println(file.length()); } //文件创建 public static void method02() throws IOException{ File file=new File("D:\\java\\d"); //创建文件 boolean flag=file.createNewFile(); System.out.println(flag); } //文件删除 public static void method03(){ File file=new File("D:\\java\\d"); //删除文件 boolean flag=file.delete(); System.out.println(flag); } //文件判断 public static void method04(){ File file = new File("D:\\java\\a.txt"); //判断该文件对象所对应的文件是否存在 System.out.println(file.exists()); //判断该文件是否是文件夹 System.out.println(file.isDirectory()); //判断该文件对象是否是文件 System.out.println(file.isFile()); } //文件夹创建 public static void method05(){ File file = new File("D:\\java\\d\\a\\c"); boolean flag=file.mkdirs(); System.out.println(flag); }
listFiles()方法
public static void main(String[] args) {
//method01(); //method02(); method03(); } public static void method01(){ File file=new File("D:\\java"); //获取该路径下的文件和文件夹 String[] arr=file.list(); //遍历 for(String s:arr){ System.out.println(s); } } public static void method02(){ File file=new File("D:\\java"); //获取该路径下的文件和文件夹所对应的文件对象 File[] files=file.listFiles(); for(File f:files){ System.out.println(f); } }
文件过滤器
public static void method03(){ File file=new File("D:\\java"); //获取该路径下的文件和文件夹所对应的文件对象 File[] files=file.listFiles(new MyFileFilter()); for(File f:files){ System.out.println(f); } }
public class MyFileFilter implements FileFilter{
public boolean accept(File pathname) {
//获取文件名 String filename=pathname.getName(); //判断该文件名是否以.txt结尾 boolean flag=filename.endsWith(".txt"); return flag; }}