El método readFloat() de la clase DataInputStream en Java se usa para leer cuatro bytes de entrada y devuelve un valor flotante. Este método lee los siguientes cuatro bytes del flujo de entrada, los interpreta en tipo flotante y los devuelve.
Sintaxis:
public final float readFloat() throws IOException
Especificado por: este método está especificado por el método readFloat() de la interfaz DataInput .
Parámetros: Este método no acepta ningún parámetro.
Valor devuelto: este método devuelve el valor flotante interpretado por los siguientes cuatro bytes del flujo de entrada.
Excepciones:
- EOFException : lanza EOFException si el flujo de entrada finaliza antes de que se puedan leer cuatro bytes.
- IOException : este método lanza IOException si la secuencia se cierra o se produce algún otro error de E/S.
Los siguientes programas ilustran el método readFloat() en la clase DataInputStream en el paquete IO:
Programa 1: Suponga la existencia del archivo “demo.txt”.
// Java program to illustrate // DataInputStream readFloat() method import java.io.*; public class GFG { public static void main(String[] args) throws IOException { // Create float array float[] buf = { 10, 20, 30, 40, 50 }; // Create file output stream FileOutputStream outputStream = new FileOutputStream("c:\\demo.txt"); // Create data output stream DataOutputStream dataOutputStr = new DataOutputStream(outputStream); for (float b : buf) { // Write float value to // the dataOutputStream dataOutputStr.writeFloat(b); } dataOutputStr.flush(); // Create file input stream FileInputStream inputStream = new FileInputStream("c:\\demo.txt"); // Create data input stream DataInputStream dataInputStr = new DataInputStream(inputStream); while (dataInputStr.available() > 0) { // Print float values System.out.println( dataInputStr.readFloat()); } } }
Programa 2: Suponga la existencia del archivo “demo.txt”.
// Java program to illustrate // DataInputStream readFloat() method import java.io.*; public class GFG { public static void main(String[] args) throws IOException { // Create float array float[] buf = { 10.9f, 20.8f, 30.88f, 40.76f, 50.678f }; // Create file output stream FileOutputStream outputStream = new FileOutputStream("c:\\demo.txt"); // Create data output stream DataOutputStream dataOutputStr = new DataOutputStream(outputStream); for (float b : buf) { // Write float value to // the dataOutputStream dataOutputStr.writeFloat(b); } dataOutputStr.flush(); // Create file input stream FileInputStream inputStream = new FileInputStream("c:\\demo.txt"); // Create data input stream DataInputStream dataInputStr = new DataInputStream(inputStream); while (dataInputStr.available() > 0) { // Print float values System.out.println( dataInputStr.readFloat()); } } }
Referencias:
https://docs.oracle.com/javase/10/docs/api/java/io/DataInputStream.html#readFloat()