IO流 管道流

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IO流 管道流相关的知识,希望对你有一定的参考价值。

package com.yyq;
import java.io.*;
/*
 * 管道流
 * RandomAccessFile
 * 随机访问文件,自身具备读写的方法
 * 通过 SkipBytes(int x)seek(int  x)
 * 结合多线程技术  管道流
 * properties  io+集合相结合
 */
class Read implements Runnable{
    private PipedInputStream in;
    Read(PipedInputStream in){
        this.in = in;
    }
    public void run(){
        try{
            byte[] buf = new byte[1024];
            int len = in.read(buf);
            String s = new String(buf,0,len);
            System.out.println(s);
            in.close();
        }
        catch(Exception e){
            throw new RuntimeException("管道读取流失败");
        }
    }
}
class Write implements Runnable{
    private PipedOutputStream out;
    Write(PipedOutputStream out){
        this.out = out;
    }
    public void run(){
        try{
            Thread.sleep(6000);
            out.write("piped".getBytes());
            out.close();
        }
        catch(Exception e){
            throw new RuntimeException("管道写出流失败");
        }
        
    }
}
public class PiPedStreamDemo {

    public static void main(String[] args) throws Exception {
        // TODO Auto-generated method stub
        PipedInputStream in = new PipedInputStream();
        PipedOutputStream out = new PipedOutputStream();
        // 将两个流链接起来   in.connect(out)
        
        in.connect(out);
        Read r = new Read(in);
        Write w = new Write(out);
        new Thread(r).start();
        new Thread(w).start();
        
    }

}

 

以上是关于IO流 管道流的主要内容,如果未能解决你的问题,请参考以下文章

java内存流:java.io.ByteArrayInputStreamjava.io.ByteArrayOutputStreamjava.io.CharArrayReaderjava.io(代码片段

IO流 管道流

Java IO7:管道流对象流

java缓冲字符字节输入输出流:java.io.BufferedReaderjava.io.BufferedWriterjava.io.BufferedInputStreamjava.io.(代码片段

JavaSE 一些技巧 04——IO流各种流常用代码整理

JAVA的IO编程:管道流