Java InputStreamReader.close()
方法
原文:https://www.studytonight.com/java-file-io/java-inputstreamreader-close-method
在本教程中,我们将学习 Java 中 InputStreamReader 类的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
结论
在本教程中,我们学习了 Java 中 InputStreamReader 类的close()
方法。此方法在被调用时将关闭当前流,并且不能对其执行进一步的操作。