流
Io流:
Lo流操作本质的目的,完成内存数据和数据源数据的转换。
流的传输内容分为:
字节流。。。。。。。。。。》传输二进制字节数据
字符流。。。。。。。。。》传数字符数据
对象流。。。。。。。。。》传输对象数据
操作文件流时,如果文件不存在,会发生读取流抛出文件未找到异常。而写入流会创建新文件(文件所在的目录必须存在)。
流操作完毕后,不关闭,不但浪费内存资源,而且写入流有可能写不进数据。
Java.lang 基础包.常用类
Java.util 集合框架
Java.io 流
Java.net 网络操作
Java.sql 数据库编程
Java.awt、javax.swing GUI组件
字节流和子符流的父类 InputStream 和OutputStream,Reader 和 Writer 。
为什么字节流和字符流的父类是抽象类:
不同的数据源读写数据的方式有所不同,所有在字节流和字符流的父类中,预留下了读写数据的抽象方法
不同的子类根据自己数据源的特点进行实现。
字节流方法中,read()和read(byte[] b)返回类型,各自是什么含义:
read()是一次读取1个字节。
read(byte[] b)一次读取1024个字节返回当前读的字节。
对象序列化:
对象流在操作对象数据时,如何对对象进行传输
在传输对象时,由于对象的数据庞大,无法直接传输。所以,在传输之前,先
将对象打散成字节序列,以利于传输。这个过程,称为序列化过程。
在字节序列到达目的地以后,又需要将字节序列还原成对象。这个过程,称为反序列化过程。
关闭流:
写入流将数据写入数据源时,需要通过flush()刷新语句,才能将数据真正写入数据源。在流关闭时,会自动执行flush()刷新语句。所以,写入流在不关闭,也不刷新的情况下,
有可能写不进数据。
浙公网安备 33010602011771号