操作字节数组的流对象(Demo)

操作字节数组的流对象。

ByteArrayInputStream:在构造的时候,需要接收数据源,而且数据源是一个字节数组。

ByteArrayOutputStream:在构造的时候,不用定义数据目的,因为该对象中已经内部封装了可变长度的字节数组。
这就是数据目的地。

因为这两个流对象都操作的数组,并没有使用系统资源。
所以,不用进行close关闭。

在流操作规律讲解

源设备:
键盘 System.in 硬盘 FileStream 内存 ArrayStream
目的设备:
控制台 System.out 硬盘 FileStream 内存 ArrayStream

用流的读写思想来操作数据。

import java.io.*;
class ByteArrayStream 
{
    public static void main(String[] args) 
    {
        //数据源
        ByteArrayInputStream bis = new ByteArrayInputStream("ABCXML".getBytes());

        //数据目的
        ByteArrayOutputStream bos = new ByteArrayOutputStream();

        int by = 0;

        while ((by=bis.read())!=-1)
        {
            bos.write(by);
        }

        System.out.println(bos.size());
        System.out.println(bos.toString());

//      bos.writeTo(new FileOutputStream("a.txt"));
    }
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容