码迷,mamicode.com
首页 > 编程语言 > 详细

内存流(字节数组流)ByteArrayInputStream

时间:2018-05-01 15:19:52      阅读:156      评论:0      收藏:0      [点我收藏+]

标签:bsp   循环   指定   取字符串   UI   pack   void   内存   end   

package org.example.io;

import java.io.ByteArrayInputStream;
import java.io.IOException;

/**

* ByteArrayInputStream:在创建对象时传入数组即可,不需要传文件,也没有新增的方法,close()关闭无效

* 流本身就是内存中的资源,流中的内容也是内存中的资源,所以不用手动关闭,内存会给他释放,所以不用关闭流

* 流的内容是内存中的资源,不访问磁盘

*/

public class TestByteArrayInputStream {

 

  public static void main(String[] args) {

    String s = "Hello World!";

    byte[] b = s.getBytes();  // 获取字符串的字节数组

    read(b);

  }

 

  private static void read(byte[] b) {

    ByteArrayInputStream bais = new ByteArrayInputStream(b);  // ByteArrayInputStream实例化时不抛出异常的原因是没有和外界产生关系

    int i = 0;

    byte[] b1 = new byte[1024];  // 字节数组缓冲区

    StringBuilder sb = new StringBuilder();  // StringBuilder位于java.lang包中,类似于字符串

    try {

      while ((i = bais.read(b1)) != -1) {

        sb.append(new String(b1, 0, i));  // 将指定的字符串循环附加到sb上

      }

      System.out.println(sb);  // 输出sb字符串

    } catch (IOException e) {

      e.printStackTrace();

    }

  }

 

}

内存流(字节数组流)ByteArrayInputStream

标签:bsp   循环   指定   取字符串   UI   pack   void   内存   end   

原文地址:https://www.cnblogs.com/ss-123/p/8976169.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!