Java FilterReader

Java FilterReader用于在读取器流上执行过滤操作。它是用于读取过滤字符流的抽象类。

FilterReader提供了默认方法,将所有请求传递给包含的流。FilterReader的子类应该重写一些方法,并可能提供额外的方法和字段。

字段

ModifierTypeFieldDescription
protectedReaderin底层字符输入流。

构造函数

ModifierConstructorDescription
protectedFilterReader(Reader in)它创建了一个新的过滤阅读器。

方法

Modifier and TypeMethodDescription
voidclose()它关闭流并释放与其关联的所有系统资源。
voidmark(int readAheadLimit)它标记了流中的当前位置。
booleanmarkSupported()它告诉这个流是否支持 mark() 操作。
booleanready()它告诉这个流是否准备好被读取。
intread()它读取一个字符。
intread(char[] cbuf, int off, int len)它将字符读入数组的一部分。
voidreset()它重置流。
longskip(long n)它会跳过字符。

示例

在此示例中,我们使用包含文本"India is my country"的"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

标签: java, Java面试题, Java下载, java教程, java技术, Java学习, Java学习教程, Java语言, Java开发, Java入门教程, Java进阶教程, Java高级教程, Java笔试题, Java编程思想