zoukankan      html  css  js  c++  java
  • I/O系列教材 (三)- Java 字节流 InputStream OutputStream

    InputStream字节输入流 
    OutputStream字节输出流 
    用于以字节的形式读取和写入数据

    步骤1:ASCII码 概念
    步骤2:以字节流的形式读取文件内容
    步骤3:以字节流的形式向文件写入数据
    步骤4:练习-写入数据到文件
    步骤5:答案-写入数据到文件
    步骤6:练习-拆分文件
    步骤7:答案-拆分文件
    步骤8:练习-合并文件
    步骤9:答案-合并文件

    步骤 1 : ASCII码 概念

    步骤 2 : 以字节流的形式读取文件内容

    InputStream是字节输入流,同时也是抽象类,只提供方法声明,不提供方法的具体实现。
    FileInputStream 是InputStream子类,以FileInputStream 为例进行文件读取

    package stream;

      

    import java.io.File;

    import java.io.FileInputStream;

    import java.io.IOException;

      

    public class TestStream {

      

        public static void main(String[] args) {

            try {

                //准备文件lol.txt其中的内容是AB,对应的ASCII分别是65 66

                File f =new File("d:/lol.txt");

                //创建基于文件的输入流

                FileInputStream fis =new FileInputStream(f);

                //创建字节数组,其长度就是文件的长度

                byte[] all =new byte[(int) f.length()];

                //以字节流的形式读取文件所有内容

                fis.read(all);

                for (byte b : all) {

                    //打印出来是65 66

                    System.out.println(b);

                }

                 

                //每次使用完流,都应该进行关闭

                fis.close();

                  

            catch (IOException e) {

                // TODO Auto-generated catch block

                e.printStackTrace();

            }

              

        }

    }

    步骤 3 : 以字节流的形式向文件写入数据

    OutputStream是字节输出流,同时也是抽象类,只提供方法声明,不提供方法的具体实现。
    FileOutputStream 是OutputStream子类,以FileOutputStream 为例向文件写出数据

    注: 如果文件d:/lol2.txt不存在,写出操作会自动创建该文件。 
    但是如果是文件 d:/xyz/lol2.txt,而目录xyz又不存在,会抛出异常

    以字节流的形式向文件写入数据

    package stream;

    import java.io.File;

    import java.io.FileOutputStream;

    import java.io.IOException;

    public class TestStream {

        public static void main(String[] args) {

            try {

                // 准备文件lol2.txt其中的内容是空的

                File f = new File("d:/lol2.txt");

                // 准备长度是2的字节数组,用88,89初始化,其对应的字符分别是X,Y

                byte data[] = { 8889 };

                // 创建基于文件的输出流

                FileOutputStream fos = new FileOutputStream(f);

                // 把数据写入到输出流

                fos.write(data);

                // 关闭输出流

                fos.close();

                 

            catch (IOException e) {

                // TODO Auto-generated catch block

                e.printStackTrace();

            }

        }

    }


    更多内容,点击了解: https://how2j.cn/k/io/io-bytestream/340.html

  • 相关阅读:
    解决SharePoint 文档库itemadded eventhandler导致的上传完成后,编辑页面保持报错的问题,错误信息为“该文档已经被编辑过 the file has been modified by...”
    解决SharePoint 2013 designer workflow 在发布的报错“负载平衡没有设置”The workflow files were saved but cannot be run.
    随机实例,随机值
    Spring4笔记
    struts2笔记(3)
    struts2笔记(2)
    获取文本的编码类型(from logparse)
    FileUtil(from logparser)
    DateUtil(SimpleDateFormat)
    struts2笔记
  • 原文地址:https://www.cnblogs.com/Lanht/p/12615506.html
Copyright © 2011-2022 走看看