介绍:
IO(Input/Output)是计算机输入/输出的接口.java的核心库java.io提供了全方面的IO接口,包括:文件系统的操作,文件读写,标准设备输出等等
- File 文件和目录类
- InputStream OutputStream 字节流读写类
- Reader writer 字符流读写类
File类及使用
一个File类的对象,表示了磁盘上的文件和目录
File file=new File("C:\FileDemo"); System.out.println(file.getAbsolutePath());//获得文件或目录的绝对路径 System.out.println(file.getParent());//获得上级目录的字符串 System.out.println(file.isDirectory());//判断是不是文件夹或是目录 System.out.println(file.isFile());//判断是不是文件 System.out.println(file.exists());//判断目录是否存在 System.out.println(file.length());//测试目录大小 System.out.println(file.delete());//可以删除目录(只能删除空的目录) File myFile=new File("C:\zhangsan"); System.out.println(myFile.mkdir());//创建目录 File myFile2=new File("C:/zhangsan/tanlei.txt"); System.out.println(myFile2.createNewFile());//创建空文件 String[] files=file.list();//查出目录下的所有文件和目录 for(String file1:files){ System.out.println(file1); }
String[] files2=file.list(new FilenameFilter() {//通过匿名内部类来构建 过滤目录和文件 @Override public boolean accept(File dir, String name) {//dir 遍历的目录 name 文件,名或目录名 // TODO Auto-generated method stub return name.endsWith(".txt");//以什么结尾的文件过滤 } }); for(String file2:files2){ System.out.println(file2); }
//获得文件的相关信息 File[] File[] files3=file.listFiles(); for(File file3:files3){ System.out.println(file3.getName()+" "+file3.length()); }
//获得文件的名字和字节数大小 File[] files4=file.listFiles(new FilenameFilter() { @Override public boolean accept(File dir, String name) { // TODO Auto-generated method stub return name.endsWith(".txt"); } }); for(File file4:files4){ System.out.println(file4.getName()+" "+file4.length()); }
//获得文件名和大小 File[] files5=file.listFiles(new FileFilter() { @Override public boolean accept(File pathname) { // TODO Auto-generated method stub return pathname.getName().endsWith(".txt"); } }); for(File file5:files5){ System.out.println(file5.getName()+" "+file5.length()); }