JAVA中的IO流
一、分为两类:
1.按照字节进行读/写,每次读/写一个字节(byte———8位二进制)--------->以Stream结尾方法。
万能读/写,可对文本、视频、图片等进行读/写。
2.按照字符进行读/写,每次读/写一个字符---------->以“Writer”或“Reader”结尾的方法
只能对文本进行读/写。
注:在windows中“a”占一个字节,也就是8位,在java中“a”占两个字节。
二、JAVA IO流中的四大家族
java.io.InputStream 字节输入流
java.io.OutputStream 字节输出流
————————————————————— 注:所谓出入均是以内存为参照
java.io.Reader 字符输入流
java.io.Writer 字符输出流
注:它们均是抽象类(abstract class)
所有流都实现了:java.io.Closeable 接口,都有close()方法,都是可关闭的。流是内存和硬盘之间的管道,用完之后一定要关闭,不然会占用资源。
所有的输出流除了实现了Closeable接口之外,还实现了Flushable接口,即可刷新,都有flush()方法,输出流在最终输出之后,一定要记得flush()刷新一下,这个刷新作用会将管道当中剩余未输出的数据强行输出完,避免数据的丢失。
三、java.io包下需要掌握的16个流
1.文件专属:java.io.FileInputStream java.io.FileOutStream java.io.FileReader java.io.FileWriter
2.转换流-->将字节流转换成字符流:java.io.InputStreamReader java.io.OutputStreamWriter
3.缓冲流专属:java.io.BufferedReader java.io.BufferedWriter java.io.BufferedInputStream java.io.BufferedOutputStream
4.数据流专属:java.io.DataInputStream java.io.DataOutputStream
5.标准输出流:java.io.PrintWriter java.io.PrintStream
6.对象专属流:java.io.ObjectInputStream java.io.ObjectOutputStream

浙公网安备 33010602011771号