初学一个新的知识,总是感觉乱七八糟的,没有任何头绪,一个短短的视频看起来就很费劲儿,不想看,但是坚持看完,把代码敲了,笔记写了,第二天再看就感觉很清晰很简单了。
IO流中的类特别多,乍一看,很乱,但是是有规律的。
首先是四大基本抽象流:字节流:InputStream、OutputStream,字符流:Reader、Writer;输入流:InputStream、Reader,输出流:OutputStream、Writer;后面的所有流都是这四个的实现类;
文件流:FileInputStream、FileOutputStream,FileReader、FileWriter,文件流算是四大基本抽象流的最初级实现类,前面两个是字节流,可以用于任何格式文件的读写(因为文件的最基本存储形式就是字节数据),后面两个是字符流,只能用来处理文本文件;
缓冲流:字节流:BufferedInputStream、BufferedOutputStream,字符流:BufferedReader、BufferedWriter,这四个流用的是装饰设计模式,在使用时要接收其它的流对象,比如文件流;同文件流一样,前面两个流可用于任何类型的文件读写,后面两个流主要用于文本文件的读写,由于这四个流在建立对象后内部会自建缓冲区,所以读写的效率比较高,尤其是BufferedReader中的readLine()方法读取文本文件特别合适,可以整行整行的读取,遇到换行符算是一行的结束,但是它不会返回换行符,所以需要在调用write()方法后用newLine()方法新建换行符;
数据流:DataInputStream、DataOutputStream:用于基本类型数据的读写,采用装饰设计模式,构造方法的形参是流对象;
太晚了,顶不住了,未完待续…………
{:soso_e108:} |