ByteArrayOutputStream用法

举报
ShaderJoy 发表于 2021/12/30 00:51:16 2021/12/30
【摘要】 字节数组流: ByteArrayOutputStream: 可以捕获内存缓冲区的数据,转换成字节数组。 ByteArrayoutputStream bout=new ByteArrayOutputStream();bout.write(int a); bout.write(int b); bout.write(in...
字节数组流:

ByteArrayOutputStream: 可以捕获内存缓冲区的数据,转换成字节数组。


  
  1. ByteArrayoutputStream bout=new ByteArrayOutputStream();
  2. bout.write(int a); bout.write(int b); bout.write(int c);
  3. byte[] buf=bout.toByteArray();//获取内存缓冲中的数据
  4. for(int i=0;i<=buf.length;i++)
  5. {
  6. System.out.println(buf);
  7. }
  8. bout.close();
  9. //注:通过调用reset()方法可以重新定位。
  10. ByteArrayInputStream: 可以将字节数组转化为输入流
  11. ByteArrayInputStream bin=new ByteArrayInputStream(byte[] buf);
  12. int data=0;
  13. while( (b=bin.read())!=-1)
  14. {
  15. System.out.println(b);
  16. }
  17. bin.close();
DataOutputStream&DataInputStream联合使用:


  
  1. ByteArrayOutputStream bout=new ByteArrayOutputStream();
  2. DataOutputStream dos=new DataOutputStream(bout);
  3. String name="suntao";
  4. int age=19;
  5. dos.writeUTF(name);
  6. dos.writeInt(age);
  7. byte[] buf=bout.toByteArray();//获取内存缓冲区中的数据
  8. dos.close();
  9. bout.close();
  10. ByteArrayInputStream bin=new ByteArrayInputStream(byte[] buf);
  11. DataInputStream dis=new DataInputStream(bin);
  12. String name=dis.readUTF();//从字节数组中读取
  13. int age=dis.readInt();
  14. dis.close();
  15. bin.close();
注:  DataInputStream&DataOutputStream还可以与FileInputStream&FileOutputStream
联合使用。
其中:
DataInputStream&DataOutputStream关心如何将数据从高层次的形式转化成低层次的形式.
FileInputStream&FileOutputStream关心如何操作存储单元以接受和产生数据。



文章来源: panda1234lee.blog.csdn.net,作者:panda1234lee,版权归原作者所有,如需转载,请联系作者。

原文链接:panda1234lee.blog.csdn.net/article/details/8691788

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。