Java IO: PipedInputStream

原文链接 作者: Jakob Jenkov 译者: 李璟([email protected])

PipedInputStream可以从管道中读取字节流数据,代码如下:

01 InputStream input = new PipedInputStream(pipedOutputStream);
02  
03 int data = input.read();
04  
05 while(data != -1) {
06  
07     //do something with data...
08  
09     doSomethingWithData(data);
10  
11     data = input.read();
12  
13 }
14  
15 input.close();

请注意,为了清晰,这里忽略了必要的异常处理。想了解更多异常处理的信息,请参考Java IO异常处理

PipedInputStream的read()方法返回读取到的包含一个字节内容的int变量(译者注:0~255)。如果read()方法返回-1,意味着程序已经读到了流的末尾,此时流内已经没有多余的数据可供读取了,你可以关闭流。-1是一个int类型,不是byte类型,这是不一样的。

Java IO管道

正如你所看到的例子那样,一个PipedInputStream需要与一个PipedOutputStream相关联,当这两种流联系起来时,就形成了一条管道。要想更多地了解Java IO中的管道,请参考Java IO管道

原创文章,转载请注明: 转载自并发编程网 – ifeve.com本文链接地址: Java IO: PipedInputStream

时间: 2024-10-28 22:09:42

Java IO: PipedInputStream的相关文章

java IO 管道流PipedOutputStream/PipedInputStream

详情:管道流的具体实现 import java.io.IOException; import java.io.PipedInputStream; import java.io.PipedOutputStream; //A线程发送数据给B线程 class AThread extends Thread{ private PipedOutputStream out=new PipedOutputStream(); public PipedOutputStream getOut() { return o

java io系列04之 管道(PipedOutputStream和PipedInputStream)的简介,源码分析和示例

本章,我们对java 管道进行学习. 转载请注明出处:http://www.cnblogs.com/skywang12345/p/io_04.html java 管道介绍 在java中,PipedOutputStream和PipedInputStream分别是管道输出流和管道输入流.它们的作用是让多线程可以通过管道进行线程间的通讯.在使用管道通信时,必须将PipedOutputStream和PipedInputStream配套使用.使 用管道通信时,大致的流程是:我们在线程A中向PipedOut

Java IO:面向流、同步、堵塞式IO(BIO)

转载请注明出处:jiq?钦's technical Blog 备注:阅读此文之前,建议先看我这篇博文了解堵塞式IO和非堵塞式IO的基本概念. JAVA BIO是面向流(字节流.字符流)的,即从流中一次读取一个或者多个字节,读取和写入时都须要同步堵塞直至完毕. 一.流(Stream) 1.字节流 输入(InputStream) 介质流 FileInputStream 从文件里读取信息 PipedInputStream 产生用于写入相关PipedOutputStream的数据,实现"管道化"

JAVA IO 字节流与字符流

文章出自:听云博客 题主将以三个章节的篇幅来讲解JAVA IO的内容 . 第一节JAVA IO包的框架体系和源码分析,第二节,序列化反序列化和IO的设计模块,第三节异步IO. 本文是第一节.       IO框架 从上图我们可以看出IO可以分为两大块 字节流和字符流 字节流是 InputStream 和 OutputStream 分别对应输入与输出 字符流是Reader和Writer分别对应输入与输出        ByteArrayInputStream  它字节数组输入流.继承于InputS

2.熟悉Java基本类库系列——Java IO 类库

Java中常用的IO操作基本上可以分为四大部分,分别是:File类操作.RandomAccessFile类操作.字节流操作.字符流操作.只要熟练掌握了本文中所列举的所有例子,基本上对于Java的IO流操作就可以说是掌握了. 下面将以JUnit测试用例的方式,用一个个例子的方式列出这四大部分中常用的操作例子. 一.File类操作 File类操作定义了最基本的.与操作系统的稳健系统相关的操作,可以对文件夹.文件进行一系列的操作.  1.常用的一些用法 //1.两个常量 @Test public vo

java io实例具体解释

import java.io.BufferedReader; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.DataOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileO

java io重点整理部分

java io流      1)java io流相关概念 输出流: 输入流: 因此输入和输出都是从程序的角度来说的. 字节流:一次读入或读出是8位二进制. 字符流:一次读入或读出是16位二进制. 字节流和字符流的原理是相同的,只不过处理的单位不同而已.后缀是Stream是字节流,而后缀是Reader,Writer是字符流.  节点流:直接与数据源相连,读入或读出. 直接使用节点流,读写不方便,为了更快的读写文件,才有了处理流. 处理流:与节点流一块使用,在节点流的基础上,再套接一层,套接在节点流

java ------ IO(从基础到加强)

IO基础到加强 基础篇 一.一些基础知识概念 1.文件的逻辑结构 流式文件 记录式文件 2.文件的存取方法 顺序存取 随机存取 3.文件的使用 操作接口 应用程序接口 4.流的定义和作用 流的定义.方向性和读/写操作 流采用缓冲区技术 流的作用:简单的说就是控制文件的输入和输出 5.流的存在 通过这个图,就可以很好的理解输入流和输出流,它们的命名是以程序为参展点,写进程序来,就是要用输入流,写出程序(写到文件中)就是要用输出流. 二.输入.输出流 主要分为两大类:字节流和字符流 1.字节流 (1

Java IO 学习总结 学习手册总结

Java IO 是一套Java用来读写数据(输入和输出)的API.大部分程序都要处理一些输入,并由输入产生一些输出.Java为此提供了java.io包. 代码 github地址:https://github.com/loveincode/StudyTest/tree/master/src/IO Java.io 包的范围 java.io 包并没有涵盖所有输入输出类型.例如,并不包含GUI或者网页上的输入输出,这些输入和输出在其它地方都涉及,比如Swing工程中的JFC (Java Foundati