`
byandby
  • 浏览: 1696068 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

顺序输入流 SequenceInputStream

阅读更多
     SequenceInputStream 类可以将几个输入流串联在一起,合并为一个输入流。当通过这个类来读取数据时,它会依次从所有被串联的输入流中读取数据。对于程序来说,就好像是对同一个流操作。SequenceInputStream类的构造方法为:
    
     SequenceInputStream(Enumeration e) --------在枚举类型的参数e中包含了若干需要被串联的输入流。

     SequenceInputStream(InputStream s1, InputStream s2) ------参数s1和s2代表两个需要被串联的输入流。顺序输入流先读取s1中的数据,再读取s2中的数据。

   下面演示SequenceInputStream的用法
package xiaohang.com;

import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.SequenceInputStream;

public class SequenceTester {
	public static void main(String[] args) throws IOException {
		InputStream s1 = new ByteArrayInputStream("你".getBytes());
		InputStream s2 = new ByteArrayInputStream("好".getBytes());
		InputStream in = new SequenceInputStream(s1, s2);
		int data;
		while ((data = in.read()) != -1) {
			System.out.println(data + "\t");
		}
		in.close();
	}
}

 
    以上main()方法 先创建了两个字节数组输入流,假定本地的操作系统的默认的字符编码为GBK,其实就是 GBK。 "你".getBytes()方法返回 “你”的GBK字符编码, "好".getBytes()方法返回字符“好”的GBK字符编码。 main()方法接着创建了一个顺序输入流,它把前面两个输入流串联了起来。 打印结果如下:



   在上边的打印结果中, 196和227为“你”的GBK 字符编码, 186和195为 "好" 的字符编码。
    程序只要关闭顺序输入流,它的 close()方法就会依次关闭所有被串联的输入流。
  • 大小: 11.8 KB
分享到:
评论

相关推荐

    java io 2nd

    - **顺序输入流SequenceInputStream**:允许将多个输入流串联成一个输入流。 - **管道流PipedStreams**:用于线程间的数据通信。 ### 压缩流CompressingStreams 压缩流提供数据压缩和解压缩功能。 - **压缩和解...

    多文件输入流类的使用

    `SequenceInputStream`是Java提供的一个特殊流,它可以顺序地读取多个输入流,就像它们是一个流一样。 **1. SequenceInputStream的使用** `SequenceInputStream`的构造方法接收一个`Enumeration`类型的参数,这个...

    java序列号流基础入门.docx

    Java序列化流(SequenceInputStream)是Java I/O流中的一个重要概念,它允许程序将多个输入流串联起来,形成一个逻辑上的连续输入流。这在处理多个数据源合并或连续读取时非常有用。在给定的示例代码中,我们可以...

    java序列号流基础入门.pdf

    总结起来,Java的SequenceInputStream提供了一种方便的方式来顺序读取多个输入流,而不需要手动管理多个流的读取顺序。这在处理多个数据源或合并文件时非常实用,简化了代码并提高了可读性。同时,通过结合使用...

    javaIO(java中的流的介绍)

    - SequenceInputStream:组合多个输入流,按顺序读取它们的内容。 2. 输出流(Output Stream) - OutputStream:所有输出流的基类,用于写入原始字节。 - ByteArrayOutputStream:接收字节并存储到内存中,可将...

    java之精髓IO流

    - **SequenceInputStream**:将多个输入流合并为一个输入流,可以顺序读取多个数据源的内容。 - **OutputStream** - **ByteArrayOutputStream**:将数据写入内存中的字节数组。适用于需要将数据暂时存储在内存中...

    JDK6API中文参考070114

    - SequenceInputStream:组合多个输入流,按顺序读取多个输入流的数据。 - OutputStream:字节输出流,作为所有字节输出流的超类,用于写入原始字节数据。例如: - ByteArrayOutputStream:字节数组输出流,用于...

    IO流体系继承结构图_动力节点Java学院整理

    此外,ObjectInputStream可以反序列化由ObjectOutputStream序列化的对象,SequenceInputStream则可以将多个InputStream连接起来,按顺序读取。 Reader和Writer体系与InputStream和OutputStream类似,只是它们处理的...

    Java IO口解析(初级)

    - **`SequenceInputStream`**:合并多个输入流为一个单一的顺序输入流。 ##### 2. 字节流操作 - **读取操作**:通过 `read()` 方法从流中读取字节。 - **关闭流**:使用 `close()` 方法关闭流,释放系统资源。 ##...

    对IO流总结

    以及`SequenceInputStream`,可以合并多个输入流。 - 输出流:包含`ByteArrayOutputStream`,将数据写入内存缓冲区;`FileOutputStream`,写入文件;`PipedOutputStream`,与PipedInputStream配合使用;以及`...

    Java,彻底明白Java语言中的IO系统

    - `SequenceInputStream`:可以将多个输入流合并成一个输入流。 - **输出流**:向目标端写入字节数据。主要类包括: - `ByteArrayOutputStream`:将数据写入内存数组。 - `FileOutputStream`:将数据写入文件。 ...

    java_IO流的处理.ppt

    - SequenceInputStream:合并多个输入流,按顺序读取。 - LineNumberInputStream:记录并提供行号的输入流。 - DataInputStream:增加了读取基本数据类型(如int、float)的方法。 除了InputStream,还有...

    JAVA_IO详解_包括讲解IO中各种流及其用法.pdf

    SequenceInputStream可以把多个输入流当作一个连续的输入流来读取,使程序可以顺序地读取多个文件或数据源。 ObjectInputStream和ObjectOutputStream是用于对象序列化的流。它们可以读写Java对象的状态,实现了对象...

    Input和Output.docx

    - **SequenceInputStream** 可以将多个输入流合并为一个,使得数据可以从多个源头顺序读取。 - **过滤流的其他类型**,如`BufferedInputStream`和`BufferedOutputStream`,可以提供缓冲功能以提高性能;`...

    JAVA IO流学习文档

    - **概述**:Java的IO流体系主要分为两大类——字节流和字符流,每种流又根据数据流向进一步分为输入流和输出流。 ##### 字节流 1. **InputStream**: 代表从源读取数据的字节输入流。 2. **OutputStream**: 代表向...

    JAVA-IO详解,方法和例子

    - 输入流:ByteArrayInputStream、StringBufferInputStream、FileInputStream、PipedInputStream和SequenceInputStream。 - 输出流:ByteArrayOutputStream、FileOutputStream、PipedOutputStream和...

    java语言的高级特性

    - `SequenceInputStream`:顺序连接多个输入流。 - `FilterInputStream`:提供基础的过滤器流类。 ##### 输出流 面向字节的输出流类主要继承自`OutputStream`类。关键方法包括: - `write(int byteData)`:写入...

    java io完全解析

    - SequenceInputStream可以将多个输入流合并为一个连续的流,类似于将多个文件的内容顺序连接。 在Java IO中,还有一组用于对象序列化的流类,包括ObjectInputStream和ObjectOutputStream,它们支持将Java对象序列...

    jAVA程序设计基础PPT教案学习.pptx

    流是有方向性的,不能往一个输入流中写数据,也不能从一个输出流中读数据。 字节流和字符流: InputStream和OutputStream是Java中两个基本的流类,它们可以读取或写入字节流或字符流。FilterInputStream和...

Global site tag (gtag.js) - Google Analytics