zoukankan      html  css  js  c++  java
  • JavaIO流学习总结-BufferedOutputStream和BufferedInputStream基本操作练习

    /**
     * 修改日期:2020/04/01
     * 修改人:牟松
     * 缓冲流BufferedOutputStream和BufferedInputStream基本操作练习
     * 问题:手动修改文件之后,不知道为何会出现无法从缓冲区中读取数据的问
     * 参考链接:https://blog.csdn.net/lyb1832567496/article/details/52727862/
    **/

     
    BufferedInputStream:
    /**
     * 修改日期:2020/04/01
     * 修改人:牟松
     * BufferedInputStream:处理流(高级流),缓冲输入流
    **/
    package io;
    import java.io.BufferedInputStream;
    import java.io.FileInputStream;
     
     
    public class BISDemo01 {
        public static void main(String[] args){
            try {
                  FileInputStream fis=new FileInputStream("BISDemo.txt");
                  BufferedInputStream bis=new BufferedInputStream(fis);
                  String content=null;
                  byte[] buffer=new byte[10240];
                  int flag=0;
                  while((flag=bis.read(buffer))!=-1){
                       content+=new String(buffer, 0, flag);
                  }
                System.out.println(content);
                bis.close();
            } catch (Exception e) {
                    e.printStackTrace();
            }
        }
    }
     
    BufferedOutputStream:
     
    package io;
    import java.io.BufferedOutputStream;
    import java.io.FileOutputStream;
    /**
     * 修改日期:2020/04/01
     * 修改人:牟松
     * BufferedOutputStream:处理流(高级流),缓冲输出流
    **/
     
    public class BOSDemo01 {
        public static void main(String[] args){
            try {
                FileOutputStream fos=new FileOutputStream("BOSDemo.txt");
                BufferedOutputStream bos=new BufferedOutputStream(fos);
                String content="输出流测试数据!";
                bos.write(content.getBytes(),0,content.getBytes().length);
                bos.flush();
                bos.close();
            } catch (Exception e) {
                    e.printStackTrace();
            }
        }
    }
     
    SummaryBISAndBOS:
    package io;
    import java.io.BufferedInputStream;
    import java.io.BufferedOutputStream;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    /**
      * 修改日期:2020/04/01
      * 修改人:牟松
      * 使用缓冲输出流和缓冲输入流实现文件的复制
     **/
    public class SummaryBISAndBOS {
        public static void main(String[] args){
            /**
             * 1.先将文件中的内容读入到缓冲输入流中
             * 2.将输入流中的数据通过缓冲输出流写入到目标文件中
             * 3.关闭输入流和输出流
             */
            try {
                long begin=System.currentTimeMillis();
                FileInputStream fis=new FileInputStream("BISDemo.txt");
                BufferedInputStream bis=new BufferedInputStream(fis);
                FileOutputStream fos=new FileOutputStream("BOSDemo.txt");
                BufferedOutputStream bos=new BufferedOutputStream(fos);
                int size=0;
                byte[] buffer=new byte[10240];
                while((size=bis.read(buffer))!=-1){
                    bos.write(buffer, 0, size);
                }
                //刷新此缓冲的输出流,保证数据全部都能写出
                bos.flush();
                bis.close();
                bos.close();
                long end=System.currentTimeMillis();
                System.out.println("使用缓冲输出流和缓冲输入流实现文件的复制完毕!耗时:"+(end-begin)+"毫秒");
            } catch (Exception e) {
                 e.printStackTrace();
            }
        }
    }
  • 相关阅读:
    洛谷——P2054 [AHOI2005]洗牌(扩展欧几里得,逆元)
    线性筛法(伪模板及。。。)
    洛谷——P3919 【模板】可持久化数组(可持久化线段树/平衡树)
    CF450B Jzzhu and Sequences(矩阵加速)
    洛谷——P1349 广义斐波那契数列(矩阵加速)
    P1269 信号放大器
    istio prometheus预警Prometheus AlertManager
    istio promethus收集不到数据
    KubeletNotReady runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:docker: network plugin is not ready: cni config uninitialized
    centos7虚拟机设置静态ip
  • 原文地址:https://www.cnblogs.com/musong1998/p/12611965.html
Copyright © 2011-2022 走看看