PipedWriter类用于将Java管道编写为字符流。此类通常用于编写文本。通常, PipedWriter连接到PipedReader, 并由不同的线程使用。
建设者
建设者 | 描述 |
---|---|
PipedWriter() | 它创建尚未连接到管道读取器的管道写入器。 |
PipedWriter(PipedReader snk) | 它创建一个连接到指定管道读取器的管道写入器。 |
方法
修饰符和类型 | 方法 | 方法 |
---|---|---|
void | close() | 它关闭此管道输出流并释放与此流关联的所有系统资源。 |
void | connect(PipedReader snk) | 它将此管道编写器连接到接收器。 |
void | flush() | 它刷新此输出流, 并强制写出所有缓冲的输出字符。 |
void | write(char[] cbuf, int off, int len) | 它将从指定的字符数组开始的len个字符从偏移量开始写入此管道输出流。 |
void | write(int c) | 它将指定的char写入管道输出流。 |
例
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
评论前必须登录!
注册