多个流合并到一个流中,进行处理
package com.gc.file; import java.io.BufferedReader; import java.io.FileInputStream; import java.io.FileWriter; import java.io.InputStreamReader; import java.io.PrintWriter; import java.io.SequenceInputStream; import java.util.ArrayList; import java.util.Collections; import java.util.Enumeration; import java.util.List; public class SequenceInputStreamDemo { public static void main(String[] args) throws Exception { //定义容器,装流 List<FileInputStream> c = new ArrayList<FileInputStream>(); c.add(new FileInputStream("temp\\buffered.txt")); c.add(new FileInputStream("temp\\pw.txt")); c.add(new FileInputStream("temp\\text.txt")); //使用集合工具类,将集合转换为枚举 Enumeration<FileInputStream> enumeration = Collections.enumeration(c); //将枚举集合中的流进行合并 SequenceInputStream sis = new SequenceInputStream(enumeration); //字节流转换为字符流,并指定编码 BufferedReader bufr = new BufferedReader(new InputStreamReader(sis,"UTF-8")); //使用打印流 PrintWriter pw = new PrintWriter(new FileWriter("temp\\seqSteam.txt"), true); String line = null; while((line=bufr.readLine())!=null) { pw.println(line); } //释放连接 bufr.close(); pw.close(); } }
相关推荐
4. **序列流** - `SequenceInputStream`: 用于合并多个输入流。 5. **对象序列化流** - `ObjectInputStream` 和 `ObjectOutputStream`: 用于对象的序列化和反序列化。 6. **字节流** - `InputStream`: 输入流基类。...
- 输入流:例如,`ByteArrayInputStream`从内存缓冲区读取,`StringBufferInputStream`从字符串读取,`FileInputStream`用于读取文件,`PipedInputStream`用于线程间的通信,`SequenceInputStream`合并多个输入流。...
- SequenceInputStream:合并多个输入流,按顺序读取。 - LineNumberInputStream:记录并提供行号的输入流。 - DataInputStream:增加了读取基本数据类型(如int、float)的方法。 除了InputStream,还有...
- **SequenceInputStream**:将多个输入流合并为一个输入流,可以顺序读取多个数据源的内容。 - **OutputStream** - **ByteArrayOutputStream**:将数据写入内存中的字节数组。适用于需要将数据暂时存储在内存中...
`SequenceInputStream`是一种特殊流,可以从多个输入流中读取数据,将它们视为单一的流,这对于合并多个数据来源特别有用。 #### 标准流 Java提供了标准输入/输出流,如`System.in`、`System.out`和`System.err`,...
5) SequenceInputStream:把多个InputStream合并为一个InputStream 2) Out stream 1) ByteArrayOutputStream:把信息存入内存中的一个缓冲区中 2) FileOutputStream:把信息存入文件中 3) PipedOutputStream:实现...
- **SequenceInputStream**: 可以将多个InputStream合并为一个流进行读取。 - **ObjectInputStream/ObjectOutputStream**: 用于对象的序列化和反序列化。 #### 九、总结 通过对Java IO流的学习,我们可以了解到...
- `SequenceInputStream`:将多个`InputStream`合并为一个流。 - **OutputStream**:用于写入字节数据。 - `ByteArrayOutputStream`:在内存中收集数据。 - `FileOutputStream`:将数据写入文件。 - `...
- **序列流**:`SequenceInputStream`,用于将多个输入流合并成一个流。 - **过滤流**:如`BufferedInputStream`、`BufferedOutputStream`、`BufferedReader`、`BufferedWriter`等,提供缓冲功能以提高性能。 - **...
8. **多路复用流**:PipedInputStream和PipedOutputStream用于线程间的通信,而SequenceInputStream可以将多个输入流合并为一个。 9. **内存流**:ByteArrayInputStream和ByteArrayOutputStream可以在内存中创建...
除了基本的输入输出流,还有一些特殊类型的流,如LineNumberInputStream提供行号功能,PushbackInputStream允许回退已读取的字节,而SequenceInputStream允许合并多个输入流。PrintStream是实用工具类,它可以格式化...
以及`SequenceInputStream`,可以合并多个输入流。 - 输出流:包含`ByteArrayOutputStream`,将数据写入内存缓冲区;`FileOutputStream`,写入文件;`PipedOutputStream`,与PipedInputStream配合使用;以及`...
- **`SequenceInputStream`**:可以将多个输入流合并成一个输入流。 ##### 2. 输出流(OutputStream) - **`ByteArrayOutputStream`**:将输出流的数据存储到内存中的字节数组。 - **`FileOutputStream`**:向文件...
- **多源合并**:使用`SequenceInputStream`。 - **对象序列化**:使用`ObjectInputStream`或`ObjectOutputStream`。 - **基本数据操作**:使用`DataInputStream`或`DataOutputStream`。 #### 八、实例分析 ...
这个例子中,我们使用SequenceInputStream将多个字节流合并成一个字节流,然后将其写入到一个新的文件中。 Java中IO流是一种基本的输入/输出机制,用于读取和写入数据。IO流可以分为两种:字节流和字符流。字节流...
- **序列流**:`SequenceInputStream`用于合并多个输入流。 - **对象序列化流**: - `ObjectInputStream`:读取并还原序列化的对象。 - `ObjectOutputStream`:将对象序列化写入文件或其他输出流。 #### 四、字节...
- `SequenceInputStream`:可以将多个输入流合并成一个输入流。 - **输出流**:向目标端写入字节数据。主要类包括: - `ByteArrayOutputStream`:将数据写入内存数组。 - `FileOutputStream`:将数据写入文件。 ...
- **SequenceInputStream**:将多个输入流合并成一个输入流。 - **OutputStream**:表示向目的地写入数据的流。 - **ByteArrayOutputStream**:向一个字节数组写入数据。 - **FileOutputStream**:向一个文件写入...
而SequenceInputStream则可以将多个输入流合并为一个,方便连续读取。 8. 文件目录操作: File类提供了对文件目录的操作,如列举目录下的文件和子目录,获取文件属性等。 9. 高级IO(NIO): Java NIO(New IO)...
- SequenceInputStream可以将多个输入流合并为一个连续的流,类似于将多个文件的内容顺序连接。 在Java IO中,还有一组用于对象序列化的流类,包括ObjectInputStream和ObjectOutputStream,它们支持将Java对象序列...