内存流:ByteArrayInputStream 和 ByteArrayOutputSteam
来源:互联网 发布:juniper交换机查mac 编辑:程序博客网 时间:2024/06/02 02:25
1 .内存操作速度快,可以将数据写入内存再进行之后的操作.
ByteArrayInputStream 是InputStream的子类
ByteArrayOutputSteam是OutputSteam的子类
2 . 定义内存输出流对象时,构造方法无参数,
ByteArrayOutputStream baos = new ByteArrayOutputStream();
而内存输入流对象的构造函数需要一个缓冲byte数组
byte[] bs =new byte[20]; // 将内存中的数据读取出来 ByteArrayInputStream bais = new ByteArrayInputStream(bs);
3 . write()和read()方法,是相对于内存文件来说的,而对象流是选择对象输出流或输入流是相对于程序来说的. 也就是说如果想往内存写入数据,相对于程序来说是输出,则要定义输出流(ByteArrayOutputSteam)对象,然后调用write()方法.
4 . 同时,如果想要从内存中读取数据,则相对于程序来说是输入,要定义(ByteArrayInputSteam)对象,然后调用read().
5 .
ByteArrayInputStream(byte[] buf) 创建一个 ByteArrayInputStream ,使其使用 buf作为其缓冲区数组。
package com.qf.demo7;import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.util.Arrays;/** * 内存流: * ByteArrayInputStream * ByteArrayOutputSteam */public class Test { public static void main(String[] args) { ByteArrayOutputStream baos = new ByteArrayOutputStream(); try { // 将内容写入到内存 baos.write("写个啥".getBytes()); baos.flush();// baos.toByteArray(); byte[] bs =new byte[20]; System.out.println(Arrays.toString(bs)); // 将内存中的数据读取出来 ByteArrayInputStream bais = new ByteArrayInputStream(bs);// byte必须传递 内存中的数据转成 byte数组的格式// 而不能直接传递一个空数组, 读取出来的数据也是空的 byte[] b = new byte[10]; int num = bais.read(b); System.err.println(Arrays.toString(b)); System.out.println(num); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}
阅读全文
0 0
- 内存流:ByteArrayInputStream 和 ByteArrayOutputSteam
- 数据流DataInputStream和内存流ByteArrayInputStream
- I/O(七)内存流ByteArrayInputStream和ByteArrayOutputStream
- Java IO--内存操作流ByteArrayInputStream/ByteArrayOutputStream
- 内存数组流(ByteArrayInputStream、CharArrayReader、StringReader)
- java 内存流(ByteArrayInputStream,ByteArrayOutputStreaem)
- java--内存流操作 ByteArrayInputStream ByteArrayOutputStream
- ByteArrayOutputStream和ByteArrayInputStream详解 &&&管道流
- 字节流ByteArrayInputStream和ByteArrayOutputStream的练习
- java IO流分析:ByteArrayInputstream 和 BufferedInputStream
- 【Java基础知识】IO流--内存操作流ByteArrayInputStream、ByteArrayOutputStream
- Java IO操作——内存操作流{ByteArrayInputStream、ByteArrayOutputStream)
- ByteArrayInputStream和ByteArrayOutputStream
- ByteArrayOutputStream 和ByteArrayInputStream详解
- ByteArrayOutputStream和ByteArrayInputStream详解
- ByteArrayOutputStream和ByteArrayInputStream详解
- ByteArrayOutputStream和ByteArrayInputStream详解
- ByteArrayOutputStream和ByteArrayInputStream详解
- Python 爬虫实践:《战狼2》豆瓣影评分析
- 数据结构实验之查找三:树的种类统计
- 网易2018校招内推编程题集合
- GIT 使用技巧
- js的一些操作方法
- 内存流:ByteArrayInputStream 和 ByteArrayOutputSteam
- java个人常用到的英语词汇
- 【演讲与口才】(1)为什么学演讲
- Struts前后端无法交互
- Pentaho 数据集成工具——Kettle(一)
- bitset模板
- 第一篇:Java内存区域与内存溢出
- web13天servlet
- 剑指offer:二叉树的深度