Java DataInputStream readByte()方法与示例

DataInputStream类readByte()方法

  • readByte()方法在java.io包中可用。

  • readByte()方法用于读取和返回带符号的输入字节值。

  • readByte()方法是一种非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。

  • readByte()方法在读取字节时可能会引发异常。

    • IOException:如果未打开此流,则可能引发此异常。

    • EndOfFileException:当此流到达其端点时,可能引发此异常。

语法:

    public final byte readByte();

参数:

  • 它不接受任何参数。

返回值:

该方法的返回类型是字节,它返回读取的有符号字节值。

示例

//Java程序演示示例 
//方法的 
//DataInputStream-

import java.io.*;

public class ReadByteOfDataInputStream {
 public static void main(String[] args) throws Exception {
  InputStream is_stm = null;
  DataInputStream dis_stm = null;

  byte[] b_arr = {
   97,
   0,
   99,
   100,
   0,
   101
  };

  try {
   //实例化ByteArrayInputStream和 
   //DataInputStream-
   is_stm = new ByteArrayInputStream(b_arr);
   dis_stm = new DataInputStream(is_stm);

   //循环读取可用数据直到结束
   while (dis_stm.available() > 0) {

    //通过使用readByte()方法is读取一个
    //一次字节
    byte val = dis_stm.readByte();
    System.out.println("dis_stm.readByte(): " + val);
   }
  } catch (Exception ex) {
   System.out.println(ex.toString());
  } finally {
   //要释放链接的系统资源
   //这些流
   if (is_stm != null)
    is_stm.close();

   if (dis_stm != null)
    dis_stm.close();
  }
 }
}

输出结果

dis_stm.readByte(): 97
dis_stm.readByte(): 0
dis_stm.readByte(): 99
dis_stm.readByte(): 100
dis_stm.readByte(): 0
dis_stm.readByte(): 101