Java DataInputStream readFloat()方法与示例

DataInputStream类readFloat()方法

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

  • readFloat()方法用于读取4个字节(即32位)的数据输入的float值,并返回读取的float值。

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

  • readFloat()方法在读取float时可能会引发异常。

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

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

语法:

    public final float readFloat();

参数:

  • 它不接受任何参数。

返回值:

该方法的返回类型为float,它返回4个字节的数据输入,作为float处理。

示例

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

import java.io.*;

public class ReadFloatOfDIS {
 public static void main(String[] args) throws IOException {
  InputStream is_stm = null;
  DataInputStream dis_stm = null;
  FileOutputStream fos_stm = null;
  DataOutputStream dos_stm = null;
  float[] f_arr = {
   97.0f,
   98.0f,
   99.0f,
   100.0f,
   101.0f
  };

  try {
   //实例化FileInputStream- 
   //DataInputStream-, FileOutputStream
   //和DataOutputStream- 

   fos_stm = new FileOutputStream("C:\\Users\\Preeti Jain\\Desktop\\programs\\includehelp.txt");
   dos_stm = new DataOutputStream(fos_stm);

   //循环写入每个浮点数直到结束
   for (float val: f_arr) {

    //通过使用writeFloat()方法isto-
    //写一个浮点到
    //DataOutputStream dos_stm-

    dos_stm.writeFloat(val);
   }


   is_stm = new FileInputStream("C:\\Users\\Preeti Jain\\Desktop\\programs\\includehelp.txt");
   dis_stm = new DataInputStream(is_stm);

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

    //通过使用readFloat()isto方法读取 
    //一次浮动

    float fl = dis_stm.readFloat();
    System.out.println("dis_stm.readFloat(): " + fl);
   }
  } catch (Exception ex) {
   System.out.println(ex.toString());
  } finally {
   //要释放链接的系统资源
   //这些流
   if (is_stm != null)
    is_stm.close();

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

   if (dos_stm != null)
    dos_stm.close();

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

输出结果

dis_stm.readFloat(): 97.0
dis_stm.readFloat(): 98.0
dis_stm.readFloat(): 99.0
dis_stm.readFloat(): 100.0
dis_stm.readFloat(): 101.0