Java IO流学习总结六:ByteArrayInputStream、ByteArrayOutputStream
Java IO流学习总结六:ByteArrayInputStream、ByteArrayOutputStream
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/54946762
本文出自【赵彦军的博客】
Java IO流学习总结一:输入输出流
Java IO流学习总结二:File
Java IO流学习总结三:缓冲流-BufferedInputStream、BufferedOutputStream
Java IO流学习总结四:缓冲流-BufferedReader、BufferedWriter
Java IO流学习总结五:转换流-InputStreamReader、OutputStreamWriter
Java IO流学习总结六:ByteArrayInputStream、ByteArrayOutputStream
Java IO流学习总结七:Commons IO 2.5-FileUtils
类的继承关系
InputStream
|__ ByteArrayInputStream
OutputStream
|__ ByteArrayOutputStream
ByteArrayInputStream
可以将字节数组转化为输入流 。
ByteArrayOutputStream
可以捕获内存缓冲区的数据,转换成字节数组。
ByteArrayInputStream
- 构造函数
public ByteArrayInputStream(byte buf[])public ByteArrayInputStream(byte buf[], int offset, int length)
- 一般方法
void close() // 关闭该流并释放与之关联的所有资源。String getEncoding() //返回此流使用的字符编码的名称。int read() //读取单个字符。int read(char[] cbuf, int offset, int length) //将字符读入数组中的某一部分。boolean ready() //判断此流是否已经准备好用于读取。
ByteArrayOutputStream
- 构造函数
public ByteArrayOutputStream()public ByteArrayOutputStream(int size)
- 一般方法
void write(int b)void write(byte b[], int off, int len)void writeTo(OutputStream out)byte toByteArray()[]void close()
练习1
字节流ByteArrayInputStream
的读写过程测试
package com.app;
import java.io.ByteArrayInputStream;
import java.io.IOException;public class A7 {public static void main(String[] args) {String mes = "hello,world" ;byte[] b = mes.getBytes() ;ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream( b ) ;int result = -1 ;while( ( result = byteArrayInputStream.read() ) != -1){System.out.println( (char) result );}try {byteArrayInputStream.close();} catch (IOException e) {e.printStackTrace();}}}
效果:
练习2
将ByteArrayOutputStream
读出的字节流用FileOutputStream
写入文件
package com.app;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;public class A6 {public static void main(String[] args) {String mes = "你好,world" ;byte[] b = mes.getBytes() ;ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream() ;try {byteArrayOutputStream.write( b );FileOutputStream fileOutputStream = new FileOutputStream( new File( "F:/123.txt" ) ) ;byteArrayOutputStream.writeTo( fileOutputStream ) ;fileOutputStream.flush();} catch (FileNotFoundException e) {e.printStackTrace();}catch (IOException e) {e.printStackTrace();}finally{try {byteArrayOutputStream.close();} catch (IOException e) {e.printStackTrace();}}}}
效果:
个人微信号:zhaoyanjun125
, 欢迎关注
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oTu9I1am-1599192091593)(http://o7rvuansr.bkt.clouddn.com/weixin200.jpg)]
Java IO流学习总结六:ByteArrayInputStream、ByteArrayOutputStream相关推荐
- Java IO流学习总结七:Commons IO 2.5-FileUtils
Java IO流学习总结七:Commons IO 2.5-FileUtils 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/5497 ...
- Java IO流学习总结二:File
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/54581478 本文出自[赵彦军的博客] Java IO流学习总结一:输入输出流 J ...
- Java IO流学习总结(一)—— IO流分类和常用IO流汇总
Java IO流学习总结(一)-- IO流分类和常用IO流汇总 IO流的分类: - 按流向分类:输入流.输出流 - 按操作对象分类:字节流.字符流 - 按功能分类:节点流.处理流 IO流的设计模式为装 ...
- Java IO流学习总结四:缓冲流-BufferedReader、BufferedWriter
Java IO流学习总结四:缓冲流-BufferedReader.BufferedWriter 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/det ...
- Java IO流学习总结三:缓冲流-BufferedInputStream、BufferedOutputStream
Java IO流学习总结三:缓冲流-BufferedInputStream.BufferedOutputStream 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/ ...
- Java IO流学习总结八:Commons IO 2.5-IOUtils
Java IO流学习总结八:Commons IO 2.5-IOUtils 转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/550519 ...
- 关于Java IO流学习总结
一.IO流的三种分类方式 1.按流的方向分为:输入流和输出流 2.按流的数据单位不同分为:字节流和字符流 3.按流的功能不同分为:节点流和处理流 二.IO流的四大抽象类: 字符流:Reader ...
- Java io流学习总结(三)
转载于:https://www.cnblogs.com/ll409546297/p/7197911.html java.io几种读写文件的方式 一.Java把这些不同来源和目标的数据都统一抽象为数据流 ...
- Java - IO流学习笔记
1.文件和文件夹 内存中存放的数据信息在计算机关机后就会消失,如果想要长久的保存数据,就需要使用到光盘.硬盘等设备,为了便于数据的管理以及检索,引入了"文件"的概念.一篇文章,一个 ...
最新文章
- finalshell文件列表不显示_Jira面板配置_待办事项不显示问题列表
- mysql在线上建索引,mysql 5.6在线DDL建索引测试
- Salesforce Lightning开发学习(二)Component组件开发实践
- 盘丝洞服务器维护,斗战神哪些区合区了_斗战神合区后名字重复怎么办_快吧游戏...
- 网络风行者(KSpider)的规则体系结构
- android 模拟点击localinstrumentation,Android Instrumentation模拟鼠标点击事件
- python编程入门经典实例-总算明了python编程入门经典实例
- UVA1386 【Cellular Automaton】题解
- Android SDK下载失败的解决方法
- ASP.NET MVC 入门9、Action Filter 与 内置的Filter实现(介绍)
- 微信小程序-音频播放-wx.createInnerAudioContext() 每次都是重复播放同一条录音
- 谷歌 Provisional headers are shown 和360急速模式 网络连接错误
- 如何在Pages for Mac中添加页眉、页脚和页码?
- (webapp)微信和safri 对于html5 部分功能不兼容,多选或单选下拉框去除边框无效果。...
- 【附白皮书下载】专家黄正杰:从微笑曲线出发,思考制造业数字化转型方向
- 晶体管共发射极应用电路
- HBuilder git使用教程
- 微信小程序——点击不同的标签,弹出显示不同的内容
- TCP报文之-tcp dup ack 、tcp Out-of-Order
- ERC20标准函数简介与测试方法
热门文章
- alipay html5 app,H5App支付宝开发详解
- android获取url参数值,android 获取url 参数值
- 北邮高级语言设计基于java期末_北邮《高级语言程序设计》第三次阶段作业带答案...
- java程序阅读技巧_Java程序员阅读源码的小技巧,原来大牛都是这样读的,赶紧看看!...
- json 序列化 java_Java JSON序列化杂谈
- esp32 rtc 时钟设置不对_STM32入门系列-STM32时钟系统,STM32时钟树
- php编写开机启动脚本,设置 msyql php-fpm 开机自动启动脚本
- 深度学习和目标检测系列教程 17-300: 3 个类别面罩检测类别数据集训练yolov5s模型
- Nginx安装及其编译命令、详细教程
- 国庆假 的CSS +JS 学习笔记