Java DataInputStream.readByte()
方法
原文:https://www.studytonight.com/java-file-io/java-datainputstream-readbyte-method
在本教程中,我们将学习 Java 中 DataInputStream 类的readByte()
方法。此方法用于读取和返回从当前输入流中读取的单个输入字节,该字节是-128 到+127 范围内的有符号值。
这是一个非静态方法,可在 java.io 包中获得。
句法
这是这个方法的语法。它不接受任何参数,并返回从当前输入流中读取的带符号 8 位字节值。
public final byte readByte() throws IOException
示例:用 Java 读取字节数组
在这个例子中,我们使用readByte()
方法从字节数组中读取数据,这里它将一个接一个地返回数组元素,因为我们正在调用这个方法,直到数据在 DataInputStream 中可用。
import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import java.io.IOException;
public class StudyTonight
{
public static void main(String[] args) throws IOException
{
byte[] byte_arr = { 10, 20, 30, 40, 50 };
ByteArrayInputStream byteArrayInputStr = new ByteArrayInputStream(byte_arr);
DataInputStream dataInputStr = new DataInputStream(byteArrayInputStr);
while (dataInputStr.available() > 0)
{
System.out.println(dataInputStr.readByte());
}
}
}
10 20 30 40 50
示例 2:用 Java 读取字节数组
这里,我们讨论的是当流中没有数据时,DataInputStream
抛出的异常,或者另一方面,我们可以说DataInputStream
指针到达文件的末尾,它将抛出一个异常,即EOFException
import java.io.ByteArrayInputStream;
import java.io.DataInputStream;
import java.io.IOException;
public class StudyTonight
{
public static void main(String[] args) throws IOException
{
byte[] byte_arr = {};
ByteArrayInputStream byteArrayInputStr = new ByteArrayInputStream(byte_arr);
DataInputStream dataInputStr = new DataInputStream(byteArrayInputStr);
System.out.println(dataInputStr.readByte());
}
}
在 Java . base/Java . io . datainputstream . read byte(datainputstream . Java:271)处的" main "线程 Java . io . eofeexception 中出现异常
结论
在本教程中,我们学习了 Java 中 DataInputStream 类的readByte()
方法,该方法读取并返回单个输入字节,该字节是-128 到+127 范围内的有符号值。