一.OutputStream 字节输出流
是抽象类,常用的方法有
- close()
- flush()
- write()
注意的是文件的输入输出是相对与内存的,当从内存向硬盘输出的时候是输出流,反之则为输入流。
1. 文件字节输出流
FileOutputStream是OutputStream的实现类.
构造方法如下:
FileOutputStream(String name)
FileOutputStream(File file)
使用的步骤:
- 创建流 用fos创建。
- write()写入硬盘
- close()关闭流
期间会抛出异常!
一次性输出多字节的方法:
write(byte[] b)
write(byte[] b,int off,int len)
表示的一次性输出字节数组长度的字节。
追加或续写:
FileOutputStream(File file,boolean append)
append是真的话,则开启续写。节约空间。
换行是“\r\n”
二. InputStream字节输入流
向内存中输入数据,常用的方法有:
- int read()
- int read(byte【】 b)
- close
第一个read返回的意义是读入的字节,第二个read返回的是读入是否成功,成功会返回字节的个数,不成功则返回-1,读入的字节都写进了byte数组中,字节数组长度通常定义为1024.
构造方法和使用方法同字节输出流。
循环优化1
int len =0;
while((len =fis.read())!=-1){
sout(len);
}
循环优化2
byte[[] bytes=new byte[1024]
int len =0;
while((len =fis.read(bytes))!=-1){
sout(new String (bytes,0,len));
}