📌  相关文章
📜  Java中的 DataInputStream readLong() 方法及示例

📅  最后修改于: 2022-05-13 01:54:44.446000             🧑  作者: Mango

Java中的 DataInputStream readLong() 方法及示例

Java中DataInputStream类的readLong()方法用于读取8个输入字节并返回一个long值。此方法从输入流中读取接下来的 8 个字节并将其解释为 long 类型并返回。

句法:

public final long readLong()
                  throws IOException

指定者:该方法由DataInput接口的readLong()方法指定。

参数:此方法不接受任何参数。

返回值:此方法返回由输入流的接下来的八个字节解释的长值。

例外:

  • EOFException – 如果输入流在八个字节被读取之前结束,则抛出EOFException
  • IOException – 如果流关闭或发生其他 I/O 错误,此方法将引发IOException

下面的程序说明了 IO 包中 DataInputStream 类中的 readLong() 方法:

程序1:假设文件“demo.txt”存在。

// Java program to illustrate
// DataInputStream readLong() method
import java.io.*;
public class GFG {
    public static void main(String[] args)
        throws IOException
    {
  
        // Create long array
        long[] buf = { 10000000000l,
                       20000000000l,
                       30000000000l };
  
        // Create file output stream
        FileOutputStream outputStream
            = new FileOutputStream("c:\\demo.txt");
  
        // Create data output stream
        DataOutputStream dataOutputStr
            = new DataOutputStream(outputStream);
  
        for (long b : buf) {
            // Write long value to
            // the dataOutputStream
            dataOutputStr.writeLong(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 long values
            System.out.println(
                dataInputStr.readLong());
        }
    }
}
输出:

程序2:假设文件“demo.txt”存在。

// Java program to illustrate
// DataInputStream readLong() method
import java.io.*;
public class GFG {
    public static void main(String[] args)
        throws IOException
    {
  
        // Create long array
        long[] buf = { 1234567890L,
                       9876543210L,
                       12345678910L };
  
        // Create file output stream
        FileOutputStream outputStream
            = new FileOutputStream("c:\\demo.txt");
  
        // Create data output stream
        DataOutputStream dataOutputStr
            = new DataOutputStream(outputStream);
  
        for (long b : buf) {
            // Write long value to
            // the dataOutputStream
            dataOutputStr.writeLong(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 long values
            System.out.println(
                dataInputStr.readLong());
        }
    }
}
输出:

参考:
https://docs.oracle.com/javase/10/docs/api/java Java()