学习笔记,仅供参考,有错必纠


内存输出流

内存输出流可以向内存中写数据, 把内存当作一个缓冲区,写出之后可以一次性获取出所有数据。

ByteArrayOutputStream类

该类继承自java.io.OutputStream,它实现了一个输出流,其中的数据被写入一个 byte 数组。缓冲区会随着数据的不断写入而自动增长。可使用 toByteArray()toString() 获取数据。 关闭 ByteArrayOutputStream 无效,此类中的方法在关闭此流后仍可被调用,而不会产生任何 IOException

  • 构造方法
ByteArrayOutputStream()
ByteArrayOutputStream(int size)

创建一个新的 byte 数组输出流,它具有指定大小的缓冲区容量(以字节为单位)

  • 举个例子

d.txt:

安徽财经大学,应用统计,山羊

JAVA代码:

package com.guiyang.object;import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;public class Demo2_ByteArrayOutputStream {public static void main(String[] args) throws IOException {FileInputStream fis = new FileInputStream("d.txt");ByteArrayOutputStream baos = new ByteArrayOutputStream();int num;while ((num = fis.read()) != -1) {baos.write(num);}fis.close();byte[] arr = baos.toByteArray();System.out.println(new String(arr));//toString方法System.out.println(baos.toString());//ByteArrayOutputStream重写了toString方法System.out.println(baos);}
}

输出:

安徽财经大学,应用统计,山羊
安徽财经大学,应用统计,山羊
安徽财经大学,应用统计,山羊

第三次学JAVA再学不好就吃翔(part112)--内存输出流相关推荐

  1. 第三次学JAVA再学不好就吃翔(part107)--字符流的拷贝

    学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流的拷贝 拷贝纯文本文件 注意事项 自定义字符数组的拷贝 IO流 字符流的拷贝 拷贝纯文本文件 zzz.txt: 安徽财经大学 JAVA代码: pa ...

  2. 第三次学JAVA再学不好就吃翔(part106)--字符流

    学习笔记,仅供参考,有错必纠 文章目录 IO流 字符流输入流FileReader 字符流是什么 FileReader类构造方法 举个例子 字符流输出流FileWriter FileWriter构造方法 ...

  3. 第三次学JAVA再学不好就吃翔(part46)--Scanner类

    学习笔记,仅供参考 文章目录 Scanner类 Scanner获取数据出现的问题 Scanner类 概述 Scanner是在java.util包下的一个类,使用该类时我们需要导包.这个类被final修 ...

  4. 第三次学JAVA再学不好就吃翔(part117)--单例设计模式

    学习笔记,仅供参考,有错必纠 文章目录 多线程 单例设计模式 饿汉式 懒汉式 第三种格式 Timer类 线程的五种状态 多线程 单例设计模式 单例设计模式,即保证类在内存中只有一个对象,如何保证类在内 ...

  5. 第三次学JAVA再学不好就吃翔(part109)--LineNumberReader类

    学习笔记,仅供参考,有错必纠 IO流 LineNumberReader类 该类继承自java.io.BufferedReader,该类可以跟踪行号的缓冲字符输入流.此类定义了方法 setLineNum ...

  6. 第三次学JAVA再学不好就吃翔(part108)--带缓冲的字符流

    学习笔记,仅供参考,有错必纠 文章目录 IO流 带缓冲的字符流 BufferedReader和BufferedWriter readLine和newLine方法 IO流 带缓冲的字符流 Buffere ...

  7. 第三次学JAVA再学不好就吃翔(part7)--基础语法之运算符

    学习笔记,仅供参考 文章目录 JAVA基础语法 运算符 算数运算符 算术运算符 ++和-- 赋值运算符 关系运算符 JAVA基础语法 运算符 什么是运算符 就是对常量和变量进行操作的符号. 运算符的分 ...

  8. 第三次学JAVA再学不好就吃翔(part115)--多线程

    学习笔记,仅供参考,有错必纠 文章目录 多线程 多线程引入 什么是线程 多线程并行和并发的区别 Java程序运行原理 多线程的实现方式 多线程实现的方式1 多线程程序实现的方式2 以上两种实现方式的区 ...

  9. 第三次学JAVA再学不好就吃翔(part113)--对象操作流

    学习笔记,仅供参考,有错必纠 对象操作流 对象操作流可以将一个对象写出, 或者读取一个对象到程序中,也就是执行了序列化和反序列化的操作. 举个例子 先构造一个Role类: package com.gu ...

最新文章

  1. Swift从零开始学习_08(代理协议传值)
  2. java 循环赛问题,网球循环赛思路 - 分治法求解(无代码)
  3. rac 火星舱如何备份oracle_Oracle数据库(RAC)巡检报告
  4. SQL字符串中单引号与换行符的转义
  5. MySQL高级-索引的使用及优化
  6. 应用程序已被java 1.6_Apple Java更新1.6.0_51之后,Swing应用程序卡住了
  7. sql 求相交的行_SQL相交
  8. Vitamix和Blendtec破壁料理机哪个更高端?
  9. HTML5后台管理模板
  10. 赛制出炉!西门子白帽黑客大赛吹响集结号
  11. APP平台是怎样实现视频加密呢?
  12. 请简述SSM框架整合思路。
  13. 关系型数据库大数据性能优化解决方案之:分表(当前表历史表)、表分区、数据清理原则
  14. 次世代建模是什么?学到什么程度才能接单赚钱
  15. 腾讯 美团 百度 网易游戏 2015校园招聘南京笔试面试之总结分析
  16. Flink学习:WaterMark
  17. 七牛云招聘~视频云产品经理
  18. 随机信号功率谱密度函数理论、估计方法及MATLAB代码
  19. 公交调度-车次链编制贪心算法
  20. 血泪经验总结,财务会计人员面试指南

热门文章

  1. AttributeError: 'numpy.ndarray' object has no attribute 'value_counts'
  2. SAFESEH 映像的模块不安全
  3. 4.6 高斯约当消元法
  4. php java session共享_PHP实现session共享
  5. 代码内容变成图片_网站只剩25行代码,真有程序员“删库跑路”?
  6. linux文件查找工具,分享|Linux 中一种友好的 find 替代工具
  7. ue4sky时间_UE4 SkyLight RealTimeCapture浅析
  8. 为何2018年中国自然灾害损失大幅下降?官方回应
  9. 天兔安装手册-第一篇文章
  10. 10 个最佳的 Node.js 的 MVC 框架