字节流的总结
InputStream:定义了字节输入流的抽象类
OutputStream:定义了字节输出流的抽象类;该类所有方法返回void值
FileInputStream:继承InputStream
FileOutputStream:继承OutputStream
缓冲区优化:
byte[] buf=new byte[1024*1024];//创建一个1M大小的缓冲区,用来存放输入流中的字节数 long time=System.currentTimeMillis(); int data=0;//用来保存实际读到的字节数 while ((data=fis.read(buf))!=-1) { fos.write(buf,0,data); } fos.close(); long time2=System.currentTimeMillis(); System.out.println("共花费+"+(time2-time));
ByteArrayInputStream:是把字节数组当成源的输入流
ByteArrayInputStream:是把字节数组当做目标的输出流
包装流,节点流
BufferedInputStream和BufferedOutputStream 需要使用已存在的节点流来构造,提供了带缓冲的读写,提高了读写的效率
DataInputStream和DataOutputStream 基本数据类型进行操作