个性化阅读
专注于IT技术分析

Java-PipedReader

PipedReader类用于以字符流的形式读取管道的内容。此类通常用于读取文本。

PipedReader类必须连接到相同的PipedWriter, 并且由不同的线程使用。

建设者

建设者 描述
PipedReader(int pipeSize) 它创建一个PipedReader, 使其尚未连接, 并使用指定的管道大小作为管道的缓冲区。
PipedReader(PipedWriter src) 它创建一个PipedReader, 以便将其连接到管道写入器src。
PipedReader(PipedWriter src, int pipeSize) 它创建一个PipedReader, 以便将其连接到管道编写器src, 并将指定的管道大小用于管道的缓冲区。
PipedReader() 它创建一个PipedReader, 以便尚未连接。

方法

修饰符和类型 方法 方法
void close() 它关闭此管道流并释放与该流关联的所有系统资源。
void connect(PipedWriter src) 它将使此管道读取器连接到管道写入器src。
int read() 它从此管道流中读取数据的下一个字符。
int read(char[] cbuf, int off, int len) 它从此管道流中读取最多len个数据字符到一个字符数组中。
boolean ready() 它告诉此流是否已准备好被读取。

import java.io.PipedReader;
import java.io.PipedWriter;

public class PipeReaderExample2 {
	public static void main(String[] args) {
		try {

			final PipedReader read = new PipedReader();
			final PipedWriter write = new PipedWriter(read);

			Thread readerThread = new Thread(new Runnable() {
				public void run() {
					try {
						int data = read.read();
						while (data != -1) {
							System.out.print((char) data);
							data = read.read();
						}
					} catch (Exception ex) {
					}
				}
			});

			Thread writerThread = new Thread(new Runnable() {
				public void run() {
					try {
						write.write("I love my country\n".toCharArray());
					} catch (Exception ex) {
					}
				}
			});

			readerThread.start();
			writerThread.start();

		} catch (Exception ex) {
			System.out.println(ex.getMessage());
		}

	}
}

输出:

I love my country
赞(0)
未经允许不得转载:srcmini » Java-PipedReader

评论 抢沙发

评论前必须登录!