流的分类
按照流是否直接与特定的地方(如磁盘、内存、设备等)相连,分为节点流处理流两类。

节点流:

可以从或向一个特定的地方(节点)读写数据。如FileReader
处理流:

是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现数据读写。如BufferedReader.处理流的构造方法总是要带一个其他的流对象做参数。一个流对象经过其他流的多次包装,称为流的链接。

JAVA常用的节点流:

  • 文 件 FileInputStream FileOutputStrean FileReader FileWriter 文件进行处理的节点流。
  • 字符串 StringReader StringWriter 对字符串进行处理的节点流。
  • 数 组ByteArrayInputStream ByteArrayOutputStreamCharArrayReader CharArrayWriter 对数组进行处理的节点流(对应的不再是文件,而是内存中的一个数组)。
  • 管 道 PipedInputStream PipedOutputStream PipedReaderPipedWriter对管道进行处理的节点流。

常用的处理流(关闭处理流使用关闭里面的节点流):

  • 缓冲流:BufferedInputStrean BufferedOutputStream BufferedReader BufferedWriter 增加缓冲功能,避免频繁读写硬盘。
  • 转换流:InputStreamReader OutputStreamReader 实现字节流和字符流之间的转换。
  • 数据流 DataInputStream DataOutputStream 等-提供将基础数据类型写入到文件中,或者读取出来.

流的关闭顺序:

  1. 一般情况下是:先打开的后关闭,后打开的先关闭
  2. 另一种情况:看依赖关系,如果流a依赖流b,应该先关闭流a,再关闭流b。例如,处理流a依赖节点流b,应该先关闭处理流a,再关闭节点流b
  3. 可以只关闭处理流,不用关闭节点流。处理流关闭的时候,会调用其处理的节点流的关闭方法。

Java:节点流和处理流的理解相关推荐

  1. Java IO 节点流与处理流类型

    处理流类型: 1.处理流之首先缓冲流: 解释: 例子:TestBufferStream1.java package com.zhj.www;import java.io.BufferedInputSt ...

  2. Java高级:IO流、File类、抽象基类、节点流、缓冲流、图片加密、其他流、对象流、随机存取文件流

    package com.atguigu.java3;import org.junit.Test;import java.io.File; import java.io.IOException; imp ...

  3. JAVA的节点流和处理流

    对于上一篇 <java中io各种流的关闭顺序>的补充 按照流是否直接与特定的地方(如磁盘.内存.设备等)相连,分为节点流和处理流两类. 节点流:可以从或向一个特定的地方(节点)读写数据.如 ...

  4. java基础 io流 字节流 字符流 节点流 包装流 转换流 缓冲流 对象流 打印流 Properties类

    目录 1.概念 2.常用的文件操作 2.1 创建文件 2.2 获取文件相关信息 2.3 目录的操作和文件删除 3. IO流原理及流的分类 3.1 流的分类 4.InputStream 字节输入流 4. ...

  5. 【Java】IO流 - 节点流和处理流【Buffered】

    ➤ Java 输入输出IO流 全部导航 文章目录 节点流和处理流 BufferedReader BufferedWriter Bufferd拷贝 BufferedInputStream/Buffere ...

  6. Java之节点流和处理流(Buffered字节字符处理流)

    文章目录 前言 基本介绍 Buffered字符处理流 BufferedReader缓冲字符输入流 BufferedWriter缓冲字符输出流 文件拷贝 Buffered字节处理流 文件拷贝(二进制文件 ...

  7. JAVA I/O流 字符流和字节流、节点流和处理流(包装流、过滤流)、缓冲流

    JAVA IO流 一.相关概念 1.分类: 区别和联系 代码 嵌套的IO流关闭的问题 一.相关概念 I/O流: Input/Output Stream,文件输入输出流. 1.分类: 输入流 和 输出流 ...

  8. 【Java网络编程与IO流】Java中IO流分为几种?字符流、字节流、缓冲流、输入流、输出流、节点流、处理流

    Java网络编程与IO流目录: [Java网络编程与IO流]Java中IO流分为几种?字符流.字节流.缓冲流.输入流.输出流.节点流.处理流 [Java网络编程与IO流]计算机网络常见面试题高频核心考 ...

  9. java 输入流关闭顺序_JAVA的节点流和处理流以及流的关闭顺序

    今天在编写hadoop程序的时候,用到了流的处理.关闭流的时候出现了问题: 代码: 1 FSDataInputStream fsin = fs.open(new Path(filein)); 2 FS ...

最新文章

  1. 无序列表属性 隐藏方式 JS简介
  2. python代码案例详解-Python编程:案例详解输出函数print
  3. leetCode第五题-求字符串最长回文字符串
  4. 经典插花的教训 PKU 1157
  5. 19.7 主动模式和被动模式 19.8 添加监控主机 19.9 添加自定义模板 19.10 处理图形中的乱码 19.11 自动发现...
  6. MVC安全:ajax表单提交切记加上AntiForgeryToken防止跨站请求伪造 (CSRF)攻击
  7. Go、Java 和 Rust 的比较
  8. spring所需包下载
  9. 世纪互联蓝云柯文达:与更多海外云服务商共赢中国市场
  10. 黑马Java笔记第一讲—java基础
  11. tif转换成jpg格式
  12. ASP利用IP138获IP地理位置
  13. linux 释放内存
  14. kali linux软件源更新,系统美化
  15. Vision Transformer综述翻译
  16. 影集制作php源码_php 源码编译
  17. 将指定的计数添加到该信号量中会导致其超过最大计数
  18. 几个opengl立方体绘制案例
  19. bsc链发行代币遇到了问题
  20. C/C++时间戳转换函数

热门文章

  1. python-time时间模块
  2. python-第一个python程序-向世界问好
  3. bzoj1639[Usaco2007 Mar]Monthly Expense 月度开支*
  4. Facebook想用机器人取代App
  5. 使用 Nginx 提升网站访问速度(转)
  6. 使用 npm script 的钩子
  7. 容器编排技术 -- Init 容器
  8. Spring Restful Web服务示例 - 使用JSON,Jackson和客户端程序
  9. 【C#】CsvHelper 使用手册
  10. HTML连载70-相片墙、盒子阴影和文字阴影