对于上一篇 《java中io各种流的关闭顺序》的补充
按照流是否直接与特定的地方(如磁盘、内存、设备等)相连,分为节点流和处理流两类。
节点流:可以从或向一个特定的地方(节点)读写数据。如FileReader.
处理流:是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现数据读写。如BufferedReader.处理流的构造方法总是要带一个其他的流对象做参数。一个流对象经过其他流的多次包装,称为流的链接。
JAVA常用的节点流有以下几个:
文 件 FileInputStream FileOutputStrean FileReader FileWriter 文件进行处理的节点流。
字符串 StringReader StringWriter 对字符串进行处理的节点流。
数 组 ByteArrayInputStream ByteArrayOutputStreamCharArrayReader CharArrayWriter 对数组进行处理的节点流(对应的不再是文件,而是内存中的一个数组)。
管 道 PipedInputStream PipedOutputStream PipedReaderPipedWriter对管道进行处理的节点流。
父 类 InputStream OutputStream Reader Writer
常用处理流(关闭处理流使用关闭里面的节点流)
缓冲流:BufferedInputStrean BufferedOutputStream BufferedReader BufferedWriter
增加缓冲功能,避免频繁读写硬盘。
转换流:InputStreamReader OutputStreamReader实现字节流和字符流之间的转换。
数据流 DataInputStream DataOutputStream 等-提供将基础数据类型写入到文件中,或者读取出来。
例如:
new BufferedReader(new FileReader(filePath));
只需关闭处理流bufferedReader 而 不用关闭FileReader, 因为关闭处理流时会关闭里面的节点流
如果处理流封装处理流,则需按照封装顺序分别关闭(由外向内)
例如:
isr = new InputStreamReader(new FileInputStream(PATH + filename), "Unicodelittle"); br = new BufferedReader(isr);
先关闭bufferedreader, 再inputstreamreader, 不用关闭fileinputstream(节点流)
相关推荐
### JAVA IO操作总结——节点流和处理流 #### 一、概述 在Java中,输入/输出(Input/Output,简称IO)操作是一项非常重要的功能,它涉及到如何从不同的源读取数据以及如何向不同的目的地写入数据。Java IO体系主要...
java数据流总结,java io流总结,节点流和处理流 java数据流总结,java io流总结,节点流和处理流 java数据流总结,java io流总结,节点流和处理流
- 继承结构包括节点流(如FileInputStream)和处理流(如BufferedInputStream),处理流往往用于增强节点流的功能。 理解并熟练运用Java IO流技术是开发Java应用程序的关键,它能够有效地处理数据的读写操作,无论...
Java中的流分为输入流和输出流,分别用于从数据源读取数据和向数据目的地写入数据。 #### 2.2 IO流的分类 Java中的IO流可以分为以下几类: - 字节流:如`InputStream`和`OutputStream`,用于处理字节数据。 - ...
java I/O流的总结 1.操作数据单位:字节流、字符流 ...处理流:不直接连接到数据源或目的地,而是“连接”在已存在的流(节点流或处理流)之上,通过对数据的处理为程序提供更为强大的读写功能。......
Java I/O流的处理过程是按照流的体系结构来组织的,体系结构从上到下依次为节点流、处理流和抽象基类。 节点流(也称为原始流)直接与数据源或目的地相关联,能够直接读取或写入数据。节点流包括文件流、标准输入...
Java IO流处理是Java编程中一个非常重要的概念,它用于在不同数据源之间传输数据,如文件、网络、内存等。在Java中,IO流分为两大类:输入流(Input Stream)和输出流(Output Stream),它们分别用于数据的读取和...
节点流是最基本的流类型,处理流是节点流的包装类,提供了更多的功能。 二、IO 流的四大抽象类 Java 中的 IO 流有四大抽象类:InputStream、OutputStream、Reader 和 Writer。这四个抽象类是所有 IO 流的基类,...
例如`FileInputStream`和`FileOutputStream`就是典型的节点流。 - **处理流**:也称为高级流,它们不直接与数据源交互,而是构建在已存在的流之上,为这些流提供额外的功能或服务,如数据转换、过滤或缓冲等。例如`...
在Java IO流中,节点流是指离数据源或程序最近的流处理流,主要有两种类型:字节流和字符流。字节流可以处理一切类型的数据,如纯文本、音频、视频等,而字符流只能处理纯文本数据。 2. 字节流: 字节流是Java IO...
Java中的I/O流分为四类:字节流(Byte Streams)和字符流(Character Streams),以及节点流(Stream Nodes)和处理流(Stream Filters)。在学习输入/输出流时,了解这些分类及其用途至关重要。 1. **字节流和字符...
流又可以根据数据传输的单位分为字节流和字符流,以及根据是否直接与数据源关联分为节点流和处理流。 2. **输入/输出IO** Java的输入/输出IO系统主要位于`java.io`包中,提供了各种类来处理不同的I/O任务。例如,...
- **按功能分:**节点流(直接与数据源连接)和处理流(增加功能,如缓冲、转换、压缩等)。 3. **常用类** - **字节流:**InputStream(输入)和OutputStream(输出)是所有字节流的基类,常用的子类有...
节点流负责数据源和程序之间建立连接,而过滤流用于给节点增加功能。 二、File类 File类是Java.io包中的一种类,它可以表示一个文件,也可以表示一个目录。在Java中,文件和目录都属于这个类中,而且区分不是非常...
* 按流的功能不同分为:节点流和处理流 二、 IO流的四大抽象类 JavaIO流提供了四大抽象类,分别是: * 字符流:Reader和Writer * 字节流:InputStream和OutputStream 三、 InputStream的基本方法 InputStream...
- **按数据类型**:分为字节流和字符流。 - 字节流:以字节为单位进行输入输出操作,适用于处理二进制文件(如音频、视频、图片)。 - 字符流:以字符为单位进行输入输出操作,适用于处理文本文件。 - **按处理...
自定义线程池在处理流的时候,我们可以传递自定义一个线程池。下面的例子中,我们有一个并行流,这个并行流使用了一个自定义的线程池去计算1到 1,000,000的和。 知识点:可以使用ForkJoinPool的构造方法并设定并行...
接着,Java IO流的层次结构进一步细化为节点流(如FileInputStream、FileOutputStream)和过滤流(如BufferedInputStream、BufferedReader)。节点流直接与数据源(如文件、设备)交互,而过滤流则在节点流的基础上...
首先,Java中的字节流分为两类:节点流和处理流。节点流直接连接到数据源或目的地,如文件、网络连接等,如FileInputStream和FileOutputStream;处理流则构建在其他流之上,提供额外的功能,如BufferedInputStream和...