InputStream 类:

InputStream 位于 java.io 包中,它是一个抽象类,表示字节输入流,需要定义 InputStream 子类的应用程序必须总是提供返回下一个输入字节的方法

它提供了 read()/read(byte[]) 用于读取一个字节/多个字节存储到 byte[] 中,InputStream 有很多实现类,大部分是按照数据源的类型来分的

FileInputStream 类是 InputStream 类的实现类,是比较常用的一个实现类,用来从系统中的某个文件中读取输入字节到程序中,FileInputStream 主要用于读取原始字节流,计算机中通过原始字节流存储的文件包括图像、音频、视频等

OutputStream 类:

OutputStream 类位于 java.io 包中,是一个抽象类,用于表示字节输出流,其提供了 write/write(byte[])  两个方法用于一次写一个字节/一次写多个字节到目的地

FileOutputStream 类是 OutputStream 类的实现类,是比较常用的一个实现类,用来从程序中把原始字节流写入到文件中,FileOutputStream 主要用于写入原始字节流,计算机中通过原始字节流存储的文件包括图像、音频、视频等都可以通过 FileOutputStream 写入

如果要读取文件、图片等字节信息可以用字节输入流 (FileInputStream)

如果要写入文件、图片等字节信息可以用字节输出流 (FileOutputStream)

Reader 类:

Reader 类位于 java.io 包中,专门用于读取字符流的抽象类,其提供了 read/read(cbuf) 方法分别用于读取一个字符/读取多个字符到缓冲数组

FileReader 类的父类的父类是 Reader 类,FileReader 专门用于读取字符文件的便捷类,该类按照平台默认的字符集解码二进制序列到程序中

Writer 类:

Writer 类位于 java.io 包中,专门用于写入字符流的抽象类,其提供了 write(int)/write(char[] cbuf) 方法分别用于写入一个字符/写入一个字符数组

FileWriter 类的父类的父类是 Writer 类,FileWriter 用来写入字符文件的便捷类,文本文件按照平台提供的默认字符集编码成二进制序列,然后写入文件

IO流的部分类简述的更多相关文章

  1. 36、IO流概述和分类

    IO流概述 IO流的主要作用是用来处理设备之间的数据传输,例如可以使用IO流将一台电脑硬盘里面的照片传输到另一台电脑上面,即将照片转换为字节,然后将字节传到另一台电脑上面,另一台电脑接收后,可以将这些 ...

  2. 6.11---字节输入流数据根据字节输出流存到文件中---io流概念及分类---文件存储的原理和记事本打开的原理---字节流读取文件的原理---文件复制的原理

  3. 理解Java之IO流

    流是一种抽象概念,它代表了数据的无结构化传递.用来进行输入输出操作的流就称为IO流. 一.IO流结构 1.流的分类方式 按流向分: 从文件/网络/内存等(数据源)到程序是输入流:从程序到文件/网络/内 ...

  4. JavaEE基础(二十)/IO流

    1.IO流(IO流概述及其分类) 1.概念 IO流用来处理设备之间的数据传输 Java对数据的操作是通过流的方式 Java用于操作流的类都在IO包中 流按流向分为两种:输入流,输出流. 流按操作类型分 ...

  5. JavaSE_ IO流 总目录(19~22)

    JavaSE学习总结第19天_IO流119.01 集合的特点和数据结构总结19.02 如何选择使用哪种集合19.03 集合常见功能和遍历方式总结19.04 异常的概述和分类19.05 JVM默认处理异 ...

  6. day20<IO流>

    IO流(IO流概述及其分类) IO流(FileInputStream) IO流(read()方法返回值为什么是int) IO流(FileOutputStream) IO流(FileOutputStre ...

  7. IO流2

    一.IO流简介及分类 1.IO流简介 IO流: 简单理解数据从一个地方流向另外一个地方 2.IO流分类 按照数据流动的方向 分为  输入流和输出流 按照数据流动的单位分为   字节流和字符流 二.四大 ...

  8. Java IO流及应用(一)

    IO流 IO流概述及FileWriter类的使用 FileReader类使用 缓冲流介绍和使用 IO流相关案例 NO.one IO流概述及FileWriter类使用 1.1 IO流概述及分类 IO流用 ...

  9. IO流总结笔记一

    ​ IO流继承关系图 IO概述 IO流是用来处理设备上数据的输入输出. 具体设备有:硬盘,内存,键盘录入等等. IO流的具体分类: 1,根据处理的数据类型不同分为:字节流和字符流,字节流读取的最小单位 ...

随机推荐

  1. 常用学习&面试资源网站

    https://github.com/MZCretin/RollToolsApi  开源通用API https://github.com/SenhLinsh/Android-Hot-Libraries ...

  2. 数据库连接池Flask-SQLAlchemy中多线程安全的问题

    使用flask-sqlalchemy写代码码到一半,突然想到,Session是否是线程安全的?于是上官方文档,答案是否! 那问题来了,怎么破?因为它会牵涉到多线程情况下,调用rollback导致的不可 ...

  3. jq删除标签

    <script>$(function(){ $("div").remove()})</script>

  4. iOS 判断scrollView是否滑动到底部

      判断scrollView有没有滚动到视图的底部,用来判断下拉刷新的时间.等 - (void)scrollViewDidScroll:(UIScrollView *)scrollView1 { CG ...

  5. iOS 当键盘覆盖textFiled时简单的处理方法

    //方法1--- - (void)textFieldDidBeginEditing:(UITextField *)textField { if (iPhone5) { return; } else { ...

  6. LeetCode_168. Excel Sheet Column Title

    168. Excel Sheet Column Title Easy Given a positive integer, return its corresponding column title a ...

  7. (转)华为 安卓手机在MAC系统下 ADB 识别

    使用MACOS发现在Android开发环境完整的情况下,接入小米,SAMSUNG,HTC,ZTE等手机都可以自动识别,如果暂时不能识别,只需要在 adb_usb.ini 中设置之后也可以识别,并可以在 ...

  8. Flutter Resolving dependencies...很慢解决办法

    昨天打开AS,看到提示更新,就手贱的点了,结果更新到3.5版本后flutter的一些插件用不了了... 没办法,只能卸载,重新装回以前的版本,什么SDK.AVD的都重新装了 全都装好后,重新运行项目的 ...

  9. selenium3 web自动化测试框架 四:Unittest介绍及项目实战中的运用

    unittest介绍及运用,可以参考之前写的文章,除了未结合web自动化演示,基础知识都有了 https://www.cnblogs.com/wuzhiming/p/8858305.html unit ...

  10. Django面试题(附带答案)

    总结的一些Django中会问的问题,希望对你们有用. 1. Django的生命周期 当用户在浏览器输入url时,浏览器会生成请求头和请求体发送给服务端,url经过Django中的wsgi时请求对象创建 ...