Java-io-datainputstream-readdouble

提供:Dev Guides
移動先:案内検索

Java.io.DataInputStream.readDouble()メソッド

説明

  • java.io.DataInputStream.readDouble()*メソッドは8バイトを読み取り、1つのdouble値を返します。

宣言

以下は* java.io.DataInputStream.readDouble()*メソッドの宣言です-

public final double readDouble()

パラメーター

NA

戻り値

このメソッドは、8バイトの入力ストリームを返し、ダブルとして解釈します。

例外

  • IOException -I/Oエラーが発生した場合、またはストリームが閉じられた場合。
  • EOFException -ストリームが最後に達した場合。

次の例は、java.io.DataInputStream.readDouble()メソッドの使用法を示しています。

package com.finddevguides;

import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;

public class DataInputStreamDemo {
   public static void main(String[] args) throws IOException {
      InputStream is = null;
      DataInputStream dis = null;
      FileOutputStream fos = null;
      DataOutputStream dos = null;
      double[] dbuf = {65.56,66.89,67.98,68.82,69.55,70.37};

      try {
        //create file output stream
         fos = new FileOutputStream("c:\\test.txt");

        //create data output stream
         dos = new DataOutputStream(fos);

        //for each byte in the buffer
         for (double d:dbuf) {

           //write double to the data output stream
            dos.writeDouble(d);
         }

        //force bytes to the underlying stream
         dos.flush();

        //create file input stream
         is = new FileInputStream("c:\\test.txt");

        //create new data input stream
         dis = new DataInputStream(is);

        //read till end of the stream
         while(dis.available()>0) {

           //read character
            double c = dis.readDouble();

           //print
            System.out.print(c + " ");
         }

      } catch(Exception e) {
        //if any I/O error occurs
         e.printStackTrace();
      } finally {
        //releases all system resources from the streams
         if(is!=null)
            is.close();
         if(dos!=null)
            is.close();
         if(dis!=null)
            dis.close();
         if(fos!=null)
            fos.close();
      }
   }
}

上記のプログラムをコンパイルして実行すると、次の結果が生成されます-

65.56 66.89 67.98 68.82 69.55 70.37