zoukankan      html  css  js  c++  java
  • IO字节流

    字节流

      字节流分为字节输出流和字节输入流。可以对文本文档等文件操作

    字节输出流

      字节输出流英文为OutputStream,它可以在文件夹里创建文件,如果命名文件名相同,则会默认覆盖;以字节的形式写入文件。

      主要方法:

        write():以字节形式写入

      FileOutputStream类:

        是OutputStream的子类,文件输出流,将数据写入 File的输出流。

      应用示例:

        1.字节写入

    1 FileOutputStream fos=new FileOutputStream("D:\demo0723\z.txt",true);
    2             //写入一个字节
    3             fos.write(100);
    4             byte[] bytes={66,67,68,69};
    5             fos.write(bytes,1,2);
    6             fos.write("
    你好啊".getBytes());    
    7             //释放资源
    8             fos.close();    

      因为存入的是字节 所以存入汉字时需要转型。

       

    字节输入流

      字节输入流英文为IntputStream,是将文件内容以字节形式读取出来。

      主要方法:

        read():以字节形式读出

      FileInputStream:

        从文件系统中的某个文件中获得输入字节。

      应用示例:

        1.字节读出

    1 FileInputStream fis=new FileInputStream("D:\demo0723\z.txt");
    2         //一个字节一个字节读
    3         int len=0;
    4         while((len=fis.read())!=-1){
    5             System.out.println((char)len);
    6         }    
    7         //释放资源
    8         fis.close();
    9     }

        2.数组读出

     1 // 明确数据源
     2 FileInputStream fis=new FileInputStream("D:\demo0723\z.txt");
     3         //创建字节数组
     4         byte[] bytes=new byte[2];
     5         //一个字节数组一个字节数组读
     6         int len=0;
     7         while((len=fis.read(bytes))!=-1){
     8             System.out.println(new String(bytes,0,len));
     9         }
    10         //释放资源
    11         fis.close();
    12     }

      我们在进行文件复制的时候,就可以将以上两个流同时使用,先读取在写入。

      下面我们将以字节读取方式进行复制:

     1 // 明确数据源
     2         FileInputStream fis=new FileInputStream("D:\demo0723\z.txt");
     3         //明确目的地
     4         FileOutputStream fos = new FileOutputStream("D:\demo0723\b\z.txt");
     5         //开始复制
     6         int len =0;
     7         while((len=fis.read())!=-1){
     8             fos.write(len);
     9         }
    10         //释放资源
    11         fis.close();
    12         fos.close();
    13     }
  • 相关阅读:
    FileZilla相关配置说明
    pod install速度慢,pod repo update 速度慢解决方法
    Vue安装
    mac 远程桌面连接
    .NET MVC 支付宝支付(即时到账)
    windows下生成ssl
    gentelella 开源后台使用记录
    node、npm、gulp安装
    武汉在院新冠肺炎患者清零
    致最可爱的战疫人
  • 原文地址:https://www.cnblogs.com/zhai113/p/11719137.html
Copyright © 2011-2022 走看看