从 Java 9 开始,我们可以使用 InputStream 类中的 readAllBytes() 方法将所有字节读取到字节数组中。此方法一次从 InputStream 对象读取所有字节,并阻塞,直到读取完所有剩余字节并检测到流结束,或引发异常。
>reallAllBytes() 方法无法自动关闭 InputStream 实例。当它到达流的末尾时,此方法的进一步调用可以返回一个空字节数组。 我们可以在简单的用例中使用此方法,在这些用例中,可以方便地将所有字节读入字节数组,而不是用于读取具有大量数据的输入流。
语法
public byte[] readAllBytes() throws IOException
在下面的示例中,我们在“C:\Temp”文件夹中创建了一个包含简单数据的“Technology.txt”文件:{ "JAVA", "PYTHON", "JAVASCRIPT", "SELENIUM", "SCALA"}.
import java.nio.*;
import java.nio.file.*;
import java.io.*;
import java.util.stream.*;
import java.nio.charset.StandardCharsets;
public class ReadAllBytesMethodTest {
public static void main(String args[]) {
try(InputStream stream = Files.newInputStream(Paths.get("C://Temp//Technology.txt"))) {
// Convert stream to string
String contents = new String(stream.readAllBytes(), StandardCharsets.UTF_8);
// To print the string content
System.out.println(contents);
} catch(IOException ioe) {
ioe.printstacktrace();
}
}
}输出
"JAVA", "PYTHON", "JAVASCRIPT", "SELENIUM", "SCALA"
以上就是在Java 9中何时使用InputStream的readAllBytes()方法?的详细内容,更多请关注编程之家其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。