zoukankan      html  css  js  c++  java
  • 2020.8.3

    一、今日学习内容:

    过滤(处理)流与内存操作流的掌握。

     1、过滤(处理)流       

            通常字节流只具有读写字节内容的方法,它们只能在文件中读取或者向文件中写入字节,在实际开发中往往需要在文件中读取或写入各种类型的数据,如整型、布尔类型等数据,就必须先将其他类型的数据转换成字节数组后写入文件,或者从文件中读取到的字节数组转换成其他数据类型,这时就需要包装类,它提供了向各种输出流对象中写入各种类型数据的方法。

    (1) DataOutputStream

       public a DataOutputSt ream (OutputStream out)

             对于DataOutputStream必须给它传一个输出流对象,完成类似DataOutputStream功能的类就是一个过滤流类或处理流类。
    (2)DataInputStream

      与前者类似,必须给他一个输出流对象,才能完成过滤流的功能。

    2、内存操作流: 之前的文件操作流是以文件的输入和输出为主的,文件操作流的输出位置是硬盘,但如果将输入输出的位置改变成了内存,就称为内存操作流,使用ByteArrayInputStream 完成内存的输入操作,而使用ByteArrayOutputStream完成内存的输出操作。

    内存操作流源代码实现:

    package Test1;
    import java.io.*;
    public class ByteArrayInputStreamDemo01 {
    /**
    * @param args
    */
    public static void main(String[] args) throws Exception{
    // TODO Auto-generated method stub
    String str="leigewudi";
    InputStream input=new ByteArrayInputStream(str.getBytes());//向内存中输出内容
    OutputStream out=new ByteArrayOutputStream();//从内存中读取内容
    char c[]=new char[1024];
    int temp,len=0;
    while((temp=input.read())!=-1){//写入内存
    c[len]=(char)temp;
    len++;
    }
    out.write(new String(c).toUpperCase().getBytes());//从内存中读取
    System.out.println(out.toString());//转大写
    out.close();
    input.close();
    System.out.println(new String(c,0,len));
    }
    }

    二、遇到的问题:

    内存操作流不明白。

    三、明日计划:

    对《大道至简》这本书做出总结,写读后感。

  • 相关阅读:
    response.setContentType()的作用及参数
    MyEclipse的一些设置
    web项目更改文件后缀,隐藏编程语言
    IntelliJ IDEA 部署远程服务
    java操作cookies
    Java 处理图片 base64 编码的相互转换
    递归与非递归二分查找实现
    js实现url链接encode加密
    mysql 中 SQL_CALC_FOUND_ROWS 功能
    Java 微信登录授权后获取微信用户信息昵称乱码问题解决
  • 原文地址:https://www.cnblogs.com/marr/p/13451870.html
Copyright © 2011-2022 走看看