📅  最后修改于: 2023-12-03 14:42:44.852000             🧑  作者: Mango
在Java中,ByteArrayInputStream
是一个用于读取字节数组的输入流。它继承自父类 InputStream
,并提供了一系列用于读取字节数组的方法。其中一个重要的方法是 close()
,用于关闭输入流。
close()
方法介绍public void close() throws IOException
以下示例展示了如何使用 ByteArrayInputStream
类的 close()
方法:
import java.io.ByteArrayInputStream;
import java.io.IOException;
public class ByteArrayInputStreamExample {
public static void main(String[] args) {
byte[] bytes = "Hello World".getBytes();
ByteArrayInputStream inputStream = new ByteArrayInputStream(bytes);
// 读取字节并输出
int data;
try {
while ((data = inputStream.read()) != -1) {
System.out.print((char) data);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
inputStream.close(); // 关闭输入流
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
输出结果将是:Hello World
。
在上面的示例中,我们首先将字符串 "Hello World"
转换为字节数组,然后创建了一个 ByteArrayInputStream
对象来读取该字节数组。接着使用 read()
方法逐个字节地读取字节数组,并将其转换为字符输出。最后,在 finally
块中,我们关闭了输入流。
请注意,为了处理可能的异常,我们在调用 close()
方法时使用了一个 try-catch
块。
使用 close()
方法是良好的编程习惯,它确保了资源的正确释放。在使用完输入流后,尽量及时调用 close()
方法来避免资源泄漏和占用过多的系统资源。
以上是关于 Java 中 ByteArrayInputStream
的 close()
方法的介绍及示例。希望对你有所帮助!