字节流:一次性传输一个字节,其基类是InputStream和OutputStream,但是这两个类不能直接使用,因为他们是基类。
inputStream和OutputStream
inputStream方法:
1.read:从字节流当中读取数据,其中方法read中提供了三种重载的读取数据的方法:
Read:从输入流中读取一个字节的字符,并转化为整形数据
Read(byte b[]):从字节流中读取若干个字节的数据到填充到内存中的字节数组对象
Read(byte b[],int off,int len):从字节流当中读取len的数据,以off为开始位置,放在数组中以b开始的位置中,读取长度不够就返回实际读取的字节数
OutputStream
1.OutputStraamWrite(byte b[]):把字节数组的数据的所有元素输出到流所指的文件中
2.write:将一个整数输出到流中,把内存的整数的最低的数据输出
3.write(byte b[],int off,int len)
4.Flush:刷空输出流,写到外存中,在hibernate中会从一级缓存中会拿出一?
FileInputStream和FileOutputStream
FileInputStream:该类用来打开一个输入文件,若要打开的文件不存在,则会产生例如FileNotFoundException ,这是一个非运行时异常,必须捕获或声明抛弃
FileOutputSteam 用来打开一个输出文件,没有必要捕获异常,文件不存在则新建
1.不需指明文件的访问方式
2.但效率低,区分输出和输入
如:我们打开一个文件可以通过:InputStream in=new FileInputStream("***.txt");
批量从文件中读取
打印从文本中读取的数据
一次性读取一个字节,注:此时会抛出IOException的异常,编译的时候必须要声明
一次性批量的输出字节到文件中