Java中的 DataInputStream readUnsignedByte() 方法及示例
Java中DataInputStream类的readUnsignedByte()方法用于读取字节并以整数形式返回。该整数是范围从 0 到 255 的无符号值。此方法中的字节是从适应的输入流中读取的。
句法:
public final int readUnsignedByte()
throws IOException
指定者:该方法由DataInput接口的readUnsignedByte()方法指定。
参数:此方法不接受任何参数。
返回值:该方法以整数形式返回读取的字节值。它是一个无符号的 8 位字节。
例外:
- EOFException – 如果输入流结束,它会抛出EOFException 。
- IOException – 如果流关闭或发生其他 I/O 错误,此方法将引发IOException 。
下面的程序说明了 IO 包中 DataInputStream 类中的 readUnsignedByte() 方法:
方案一:
// Java program to illustrate
// DataInputStream readUnsignedByte() method
import java.io.*;
public class GFG {
public static void main(String[] args)
throws IOException
{
// Create byte array
byte[] b = { 10, 20, 30, 40, 50 };
// Create byte array input stream
ByteArrayInputStream byteArrayInputStr
= new ByteArrayInputStream(b);
// Convert byte array input stream to
// DataInputStream
DataInputStream dataInputStr
= new DataInputStream(
byteArrayInputStr);
while (dataInputStr.available() > 0) {
// Print bytes
System.out.println(
dataInputStr.readUnsignedByte());
}
}
}
输出:
10
20
30
40
50
方案二:
// Java program to illustrate
// DataInputStream readUnsignedByte() method
import java.io.*;
public class GFG {
public static void main(String[] args)
throws IOException
{
// Create byte array
byte[] b = { -20, -10, 0, 10, 20 };
// Create byte array input stream
ByteArrayInputStream byteArrayInputStr
= new ByteArrayInputStream(b);
// Convert byte array input stream to
// DataInputStream
DataInputStream dataInputStr
= new DataInputStream(
byteArrayInputStr);
while (dataInputStr.available() > 0) {
// Print bytes
System.out.println(
dataInputStr.readUnsignedByte());
}
}
}
输出:
236
246
0
10
20
参考:
https://docs.oracle.com/javase/10/docs/api/java Java()