Java InputStreamReader.close()方法

原文:https://www.studytonight.com/java-file-io/java-inputstreamreader-close-method

在本教程中,我们将学习 JavaInputStreamReader 类的close()方法。这个方法的工作是关闭 InputStreamReader 实例。调用此方法后,流上的read()ready()mark()reset()skip()方法的操作将引发 IOException。

句法

这是此方法的语法声明。它不接受任何参数,也不返回值。

public void close()

示例:关闭 Java 中的 InputStreamReader 实例

在这个例子中,一旦我们使用 InputStreamReader 从文件中读取数据,我们就使用 close()方法关闭这个流,这样它就不会有任何错误。我们关闭流以移除与之链接的资源。

import java.io.FileInputStream;
import java.io.InputStreamReader;
public class StudyTonight 
{
    public static void main(String args[])
    {
        int i;
        char c;
        try
        {
            FileInputStream    fileInputStream = new FileInputStream("E://studytonight//output.txt");
            InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream);
            i = inputStreamReader.read();
            c = (char)i;
            System.out.println(c);
            inputStreamReader.close();
            System.out.println("close() invoked");
        }
        catch (Exception e) 
        {
            System.out.print("Error: "+e.toString());
        } 
    }
}

H 关闭()被调用

输出. txt

Hello Studytonight

示例 2:关闭 Java 中的 InputStream 实例

在本例中,我们在从流中读取数据之前关闭了该流,因此与它相关的所有资源都将被删除。如果我们试图在关闭流后读取数据,它将抛出一个异常java.io.IOException: Stream closed

import java.io.FileInputStream;
import java.io.InputStreamReader;
public class StudyTonight 
{
    public static void main(String args[])
    {
        int i;
        char c;
        try
        {
            FileInputStream    fileInputStream = new FileInputStream("E://studytonight//output.txt");
            InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream);
            inputStreamReader.close();
            System.out.println("close() invoked");
            i = inputStreamReader.read();
            c = (char)i;
            System.out.println(c);
        }
        catch (Exception e) 
        {
            System.out.print("Error: "+e.toString());
        } 
    }
}

close()调用了 错误:java.io.IOException:流关闭

输出. txt

Hello Studytonight

结论

在本教程中,我们学习了 JavaInputStreamReader 类的close()方法。此方法在被调用时将关闭当前流,并且不能对其执行进一步的操作。