java _io_字节缓冲流(装饰器)输入输出
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java _io_字节缓冲流(装饰器)输入输出相关的知识,希望对你有一定的参考价值。
*装饰模式- 字节缓冲流
- BufferedInputStream bis=new BufferedInputStream(inputStream is)
- BufferedOutputStream bos=new BufferedOutputStream(OutputStream os)
- 最底层一定是节点流
- 只需要释放最外层的处理流,若要手动关闭遵循从里到外的顺序关闭(从字节流到处理流)
- 默认为8k,可以改变
//参数是字节输入流对象
InputStream is =new BufferedInputStream(new InputStream(f));
OutputStream os=new BufferedOutputStream(new OutputStream(f));
处理流装饰字节流输入:
File f =new File("C:\\Users\\10853\\eclipse-workspace\\hell\\src\\hell\\abc");
InputStream is =null;
try
**is=new BufferedInputStream(new FileInputStream(f));**
byte[] flush =new byte[1024];
int len=-1;
while((len=is.read(flush))!=-1)
is.read(flush,0,len);
catch(FileNotFoundException e)
e.printStackTrace();
catch(IOException e)
e.printStackTrace();
finally
try
if(null!=is)
i**s.close();** //关闭处理流,会自动关闭字节流
catch(IOException e)
e.printStackTrace();
处理流装饰字节流输出:
File f=new File("D:d/c.txt");
OutputStream os =null;
try
** os=new BufferedOutputStream(new FileOutputStream(f));**
String s="addaa";
byte[] datas=s.getBytes();
os.write(datas,0,datas.length);
os.flush();
catch(FileNotFoundException e)
e.printStackTrace();
catch(IOException e)
e.printStackTrace();
finally
try
if(**null!=os**) //关闭处理流会自动关闭字节流
os.close();
catch(IOException e)
e.printStackTrace();
以上是关于java _io_字节缓冲流(装饰器)输入输出的主要内容,如果未能解决你的问题,请参考以下文章