【Java FilterReader】Java FilterReader用于对读取器流执行过滤操作。它是用于读取过滤的字符流的抽象类。
FilterReader提供将所有请求传递到所包含的流的默认方法。 FilterReader的子类应覆盖其某些方法, 并且可能还提供其他方法和字段。
领域
编辑 |
类型 |
领域 |
描述 |
protected |
Reader |
in |
底层字符输入流。 |
建设者
编辑 |
建设者 |
描述 |
protected |
FilterReader(Reader in) |
它将创建一个新的过滤阅读器。 |
方法
修饰符和类型 |
方法 |
描述 |
void |
close() |
它关闭流并释放与其关联的所有系统资源。 |
void |
mark(int readAheadLimit) |
它标记了流中的当前位置。 |
boolean |
markSupported() |
它告诉此流是否支持mark()操作。 |
boolean |
ready() |
它告诉此流是否已准备好被读取。 |
int |
read() |
它读取一个字符。 |
int |
read(char[] cbuf, int off, int len) |
它将字符读入数组的一部分。 |
void |
reset() |
重置流。 |
long |
skip(long n) |
跳过字符。 |
例在此示例中, 我们使用的“ javaFile123.txt”文件中包含“印度是我的国家”文本。在这里, 我们正在转换带有问号’
?’
的空格。
import java.io.*;
class CustomFilterReader extends FilterReader {
CustomFilterReader(Reader in) {
super(in);
}
public int read() throws IOException {
int x = super.read();
if ((char) x == ' ')
return ((int) '?');
else
return x;
}
}
public class FilterReaderExample {
public static void main(String[] args) {
try{
Reader reader = new FileReader("javaFile123.txt");
CustomFilterReader fr = new CustomFilterReader(reader);
int i;
while ((i = fr.read()) != -1) {
System.out.print((char) i);
}
fr.close();
reader.close();
} catch (Exception e) {
e.getMessage();
}
}
}
输出:
India?is?my?country
推荐阅读