File类
java.io.File类:代表硬盘上的一个文件或目录
File类的构造方法:
File类没有无参构造方法,所有构造方法都有参数
File(String pathname):通过指定的绝对路径创建一个File实例
File(String parent,String child):通过parent路径名字符串和child路径名字符串创建一个File实例
File(File parent,String child):根据parent抽象路径名和child路径名字符串创建一个File实例
File类的常用方法:
boolean exists():测试此路径名表示的文件或目录是否存在,如果存在返回true,否则返回false。
boolean isFile():测试此路径名表示的文件是否是一个标准文件。
boolean isDicrectory():测试此路径名表示的文件是否是一个目录。
boolean createNewFile():当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件,创建成功返回true,否则返回false。
boolean mkdir():创建此抽象路径名指定的目录。
boolean mkdirs():创建此抽象路径名指定的目录,包括所有必需但不存在的父目录。
boolean delete():删除此抽象路径名指定的文件或目录。
boolean equals(Object obj):测试此抽象路径名与给定对象是否相等。
String getPath(): 将此抽象路径名转换为一个路径名字符串。
String getAbsolutePath():返回此抽象路径名的绝对路径名字符串。
String getName():返回由此抽象路径名表示的文件或目录的名称。
String[] list():返回一个字符串数组,这些字符串指定此抽象路径名表示的目录中的文件和目录。
常用方法示例:
1 public class TestFile1 { 2 public static void main(String[] args) throws IOException { 3 File f1 = new File("helloworld.txt"); 4 f1.createNewFile();//创建新文件 5 System.out.println(f1.isFile());//判断是否是文件 6 System.out.println(f1.getAbsolutePath());//得到文件绝对路径 7 System.out.println(f1.getPath());//得到文件的相对路径 8 System.out.println(f1.getName());//得到文件名 9 System.out.println(f1.getParent());// 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null。 10 File f2 = new File("hello/world/java"); 11 f2.mkdirs();//创建目录 12 String[] liStrings = f2.list(); 13 for(int i = 0;i<liStrings.length;i++) { 14 System.out.println(liStrings[i]); 15 } 16 System.out.println(f2.isDirectory());//判断是否是目录 17 f1.delete();//删除文件 18 System.out.println(f1.exists());//判断文件是否存在 19 } 20 }
I/O流
IO流体系图:
注意:IO流都是成对的,每个输入流都有其对应的输出流
IO流的分类:
按照数据流的方向:输入流,输出流
按照处理数据的单位:字符流,字节流
按照实现的功能:节点流,和处理流
输入流:InputStream,Reader,及其相关子类
输出流:OutputStream,Writer,及其相关子类
注意:判断一个流是输入流还是输出流,是相对程序代码而言的。数据从外部文件流向程序代码就是输入流,从代码流向外部文件就是输出流。
字节流:二进制格式(只要确定不是纯文本格式),InputStrem,OutputStrem及其所有带有Stream子类
字符流:纯文本格式(比如英文/汉字/或其他编码文字)Reader,Writer及其相关子类
节点流:对文件操作的字符流有FileReader/FileWriter,字节流有FileInputStream/FileOutStream
处理流:
原文:https://www.cnblogs.com/changlei/p/10452976.html