1、前言
2、Commons IO 类库
2.1 FileUtils 文件操做工具类
提供方法数组
2.2 IOUtils 流操做工具类(功能、方法、demo)
2.2.1
功能:提供用于读取,写入和复制文件的实用方法。 这些方法适用于InputStream,OutputStream,Reader和Writer。2.2.2
方法函数
为输入/输出操做提供静态实用程序方法。工具
toXXX()
- 从流中读取数据。write()
- 将数据写入流。copy()
- 将全部数据复制到另外一个流的流。contentEquals
- 比较两个流的内容。2.2.3
demo性能
//方式1:使用缓冲读取器逐行读取文件 public static void readUsingTraditionalWay() throws IOException { try(BufferedReader bufferReader = new BufferedReader( new InputStreamReader( new FileInputStream("data.txt") ) )) { String line; while(( line = bufferReader.readLine()) != null ) System.out.println( line ); } //方式2:使用IOUtils一次读取文件 public static void readUsingIOUtils() throws IOException { try(InputStream is = new FileInputStream("data.txt")) { System.out.println(IOUtils.toString(is, "UTF-8") ); } }
3、IO流总结
一、
按流的划分二、
按流的处理的数据单元分类三、
按流的功能分类:四、
IO的四个基本抽象类:五、
InputStream的实现类:FileInputStream
ByteArrayInutStream
BufferedInputStream
DataInputStream
ObjectInputStream
六、
OutputStream的实现类:FileOutputStream
ByteArrayOutputStream
BufferedOutputStream
DataOutputStream
ObjectOutputStream
PrintStream
七、
Reader的实现类FileReader
BufferedReader
InputStreamReader
八、
Writer的实现类FileWriter
BufferedWriter
OutputStreamWriter
九、
序列化十、
反序列化