Java PushbackReader
精华
小牛编辑
104浏览
2023-03-14
1 什么是Java PushbackReader
Java PushbackReader类是字符流读取器。它是用来推回一个字符流,并覆盖了FilterReader类。
2 Java PushbackReader的语法
public class PushbackReader extends FilterReader
3 Java PushbackReader的方法
方法 | 描述 |
---|---|
int read() | 用于读取单个字符。 |
int read(char[] cbuf, int off, int len) | 用于将字符读入数组的一部分。 |
void mark(int readAheadLimit) | 用于标记流中的当前位置。 |
boolean ready() | 用于告诉流是否准备好被读取。 |
boolean markSupported() | 用于判断流是否支持mark()操作。 |
long skip(long n) | 用于跳过字符。 |
void unread (int c) | 通过将字符复制到推回缓冲区来推回字符。 |
void unread (char[] cbuf) | 用于通过将字符数组复制到推回缓冲区来推回字符数组。 |
void unread(char[] cbuf, int off, int len) | 通过将字符数组的一部分复制到推回缓冲区的前面来推回它。 |
void reset() | 用于重置流。 |
void close() | 用于关闭流。 |
4 Java PushbackReader的例子
package cn.xnip;
/**
* 小牛知识库网: https://www.xnip.cn
*/
import java.io.*;
/**
* Java PushbackReader的例子
*/
public class Demo{
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