Java PushbackReader类是字符流读取器。它用于将字符推回流中并覆盖FilterReader类。
类声明
我们来看一下java.io.PushbackReader类的声明:
public class PushbackReader extends FilterReader
类方法
方法 | 描述 |
---|---|
int read() | 它用于读取单个字符。 |
void mark(int readAheadLimit) | 它用于标记流中的当前位置。 |
boolean ready() | 它用于告诉流是否准备好被读取。 |
boolean markSupported() | 它用于判断流是否支持mark()操作。 |
long skip(long n) | 用于跳过字符。 |
void unread (int c) | 它通过将字符复制到推回缓冲区来推回字符。 |
void unread (char[] cbuf) | 它通过将字符数组复制到推回缓冲区来推回字符数组。 |
void reset() | 用于重置流。 |
void close() | 用于关闭流。 |
PushbackReader类的示例
import java.io.*;
public class ReaderExample{
public static void main(String[] args) throws Exception {
char ary[] = {'1', '-', '-', '2', '-', '3', '4', '-', '-', '-', '5', '6'};
CharArrayReader reader = new CharArrayReader(ary);
PushbackReader push = new PushbackReader(reader);
int i;
while( (i = push.read())!= -1) {
if(i == '-') {
int j;
if( (j = push.read()) == '-'){
System.out.print("#*");
}else {
push.unread(j); // push back single character
System.out.print((char)i);
}
}else {
System.out.print((char)i);
}
}
}
}
输出量
1#*2-34#*-56
评论前必须登录!
注册