*装饰模式

字节缓冲流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(); } }