`

ByteArrayOutputStream和ByteArrayInputStream详解

 
阅读更多

字节数组流:
ByteArrayOutputStream:    可以捕获内存缓冲区的数据,转换成字节数组。
 ByteArrayoutputStream bout=new ByteArrayOutputStream();
 bout.write(int a);  bout.write(int b);  bout.write(int c);
 byte[] buf=bout.toByteArray();//获取内存缓冲中的数据
 for(int i=0;i<=buf.length;i++)
 {
  System.out.println(buf[i]);
 }
 bout.close();
 注:通过调用reset()方法可以重新定位。

ByteArrayInputStream: 可以将字节数组转化为输入流
 ByteArrayInputStream bin=new ByteArrayInputStream(byte[] buf);
 int data=0;
 while( (b=bin.read())!=-1)
 {
  System.out.println(b);
 }
 bin.close();


与DataOutputStream&DataInputStream联合使用:
 
 ByteArrayOutputStream bout=new ByteArrayOutputStream();
 DataOutputStream dos=new DataOutputStream(bout);
 String name="suntao";
 int age=19;
 dos.writeUTF(name);
 dos.writeInt(age);
 byte[] buf=bout.toByteArray();//获取内存缓冲区中的数据
 dos.close();
 bout.close();


 ByteArrayInputStream bin=new ByteArrayInputStream(byte[] buf);
 DataInputStream dis=new DataInputStream(bin);
 String name=dis.readUTF();//从字节数组中读取
 int age=dis.readInt();
 dis.close();
 bin.close();
 
注:  DataInputStream&DataOutputStream还可以与FileInputStream&FileOutputStream

联合使用。

其中:

DataInputStream&DataOutputStream关心如何将数据从高层次的形式转化成低层次的形式.
 FileInputStream&FileOutputStream关心如何操作存储单元以接受和产生数据。

分享到:
评论

相关推荐

    Java使用ByteArrayOutputStream 和 ByteArrayInputStream 避免重复读取配置文件的方法

    主要介绍了Java使用ByteArrayOutputStream 和 ByteArrayInputStream 避免重复读取配置文件的方法,需要的朋友可以参考下

    ByteArrayInOutStream:一个Java类,允许从ByteArrayOutputStream到ByteArrayInputStream的快速,简单的“转换”

    ByteArrayInOutStream 一个Java类,允许从ByteArrayOutputStream到ByteArrayInputStream的快速,简单的“转换”主页 ## License此源代码(ByteArrayInOutStream.java)是免费许可证。 这意味着您可以随意使用它,而...

    Message.java

    JAVA使用ByteArrayOutputStream、ByteArrayInputStream将对象序列化反序列化,通过JAVA socket实现对象在网络中传输

    TcpServer.java

    JAVA使用ByteArrayOutputStream、ByteArrayInputStream将对象序列化反序列化,通过JAVA socket实现对象在网络中传输

    TcpClient.java

    JAVA使用ByteArrayOutputStream、ByteArrayInputStream将对象序列化反序列化,通过JAVA socket实现对象在网络中传输

    【IT十八掌徐培成】Java基础第16天-04.ByteArrayInputStream-ByteArrayOutputStream.zip

    【IT十八掌徐培成】Java基础第16天-04.ByteArrayInputStream-ByteArrayOutputStream.zip

    ByteArrayOutputStream简介和使用_动力节点Java学院整理

    ByteArrayOutputStream 是字节数组输出流。它继承于OutputStream。 ByteArrayOutputStream 中的数据被写入一个 byte 数组。缓冲区会随着数据的不断写入而自动增长。可使用 toByteArray() 和 toString() 获取数据。

    Java-IO-Learning

    Java IO学习 FileInputStream,FileOutputstream 随机存取文件 ByteArrayOutputStream,ByteArrayInputStream

    java ZIP 解压缩

    ByteArrayInputStream bais = new ByteArrayInputStream(data); ByteArrayOutputStream baos = new ByteArrayOutputStream(); // 压缩 compress(bais, baos); byte[] output = baos.toByteArray(); ...

    Android ByteArrayOutputStream() 读取TXT文件并输出.rar

    Android ByteArrayOutputStream() 读取TXT文件并输出,Andorid文件流方式打开文本文件的例子,在文本框中输入文件路径,点击按钮后直接读取文件内容,并输出到屏幕上显示,是一个比较基础的Java读取txt文件的例子,...

    PhoneBooks

    ByteArrayOutputStream baos = new ByteArrayOutputStream(); DataOutputStream dos = new DataOutputStream(baos); dos.writeUTF(userName); dos.writeUTF(mobilePhone); dos.writeUTF(email); dos.writeUTF...

    详解Java中ByteArray字节数组的输入输出流的用法

    ByteArrayInputStream和ByteArrayOutputStream分别集成自InputStream和OutputStream这两个输入和输出流,这里我们就来详解Java中ByteArray字节数组的输入输出流的用法,需要的朋友可以参考下

    BSONforJackson.zip

     ByteArrayOutputStream baos = new ByteArrayOutputStream();  ObjectMapper mapper = new ObjectMapper(new BsonFactory());  mapper.writeValue(baos, bob);  //deserialize data  ...

    java72-java-advance.rar

    3. ByteArrayOutputStream将下列哪一项作为输出流 C a) 字符b)字节c)字节数组D)对象 4. 下列流中哪一个使用了缓冲区技术A A.BuffereOutputStream B. FileInputStream C. DataOutputStream D.FileReader 5....

    深刻理解java io

    1) ByteArrayInputStream:把内存中的一个缓冲区作为InputStream使用 2) StringBufferInputStream:把一个String对象作为InputStream 3) FileInputStream:把一个文件作为InputStream,实现对文件的读取操作 4) ...

    Android 网络html源码查看器详解及实例

    Android 网络html源码查看器详解及实例 IO字节流的数据传输了解 Handler的基本使用 1.作品展示 2.需要掌握的知识 ... ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();

    Java程序设计语言期末试题

    1) ByteArrayOutputStream:把信息存入内存中的一个缓冲区中 2) FileOutputStream:把信息存入文件中 3) PipedOutputStream:实现了pipe的概念,主要在线程中使用 4) SequenceOutputStream:把多个OutStream合并为一...

    IO流各个类的使用方法

    介绍了,下面这些类的具体使用...ByteArrayInputStream ByteArrayOutputStream 【字符流】 Reader Writer InputStreamReader OutputStreamWriter BufferedReader BufferedWriter /PrintWriter FileReader FileWriter

    教你彻底明白Java的IO系统

    在Java的IO中,所有的stream(包括Input和Out stream)都包括两种类型: 1.1 以字节为导向的stream 以字节为导向的stream,表示以字节为单位从stream中读取或往stream中写入信息。以字节为导向的stream包括下面几种...

Global site tag (gtag.js) - Google Analytics