DataInputStream DataOutputStream

DataInputStream DataOutputStream은 자바의 Primitive 데이터를 입력하고 출력하는데 알맞는 클래스이다.  DataInputStream는 생성자에 InputStream을 받아들이며, DataOutputStream은 생성자에서 OutputStream을 받아들인다. 이는 다른 바이트스트림을 통해서 읽어들이거나 쓴다는 의미다.

 

** InputStream, OutputStream을 받아들인다는 것은InputStreamOutputStream의 각각의 하위 클래스드을 받아 들일수 있다는 것을 의미한다.

 

  

 

DataOutputStream을 이용한 데이터 파일로 데이터 출력

 

package ch4;

 

import java.io.DataOutputStream;

import java.io.FileOutputStream;

import java.io.IOException;

 

public class DataOutputStreamTest {

 

       public static void main(String[] args) {

              FileOutputStream fis = null;

              DataOutputStream dis = null;

              try {

                     fis = new FileOutputStream("data.bin");

                     dis = new DataOutputStream(fis);

                     dis.writeBoolean(true);

                     dis.writeByte((byte) 5);

                     dis.writeInt(100);

                     dis.writeDouble(200.5);

                     dis.writeUTF("hello world");

                     System.out.println("저장했습니다.");

              } catch (Exception ex) {

                     System.out.println(ex);

              } finally {

                     try {

                           fis.close();

                     } catch (IOException e) {

                     }

                     try {

                           dis.close();

                     } catch (IOException e) {

                     }

              }

       }

}

 

 

 

DataInputStream을 이용한 데이터 파일로부터 데이터 출력(읽기)

 

package ch4;

 

import java.io.DataInputStream;

import java.io.FileInputStream;

import java.io.IOException;

 

public class DataInputStreamTest {

 

       public static void main(String[] args) {

              FileInputStream fis = null;

              DataInputStream dis = null;

              try {

                     fis = new FileInputStream("data.bin");

                     dis = new DataInputStream(fis);

                     boolean b = dis.readBoolean();

                     byte b2 = dis.readByte();

                     int i = dis.readInt();

                     double d = dis.readDouble();

                     String s = dis.readUTF();

                     System.out.println("boolean :" + b);

                     System.out.println("byte :" + b2);

                     System.out.println("int :" + i);

                     System.out.println("double :" + d);

                     System.out.println("String :" + s);

              } catch (Exception ex) {

                     System.out.println(ex);

              } finally {

                     try {

                           fis.close();

                     } catch (IOException e) {

                     }

                     try {

                           dis.close();

                     } catch (IOException e) {

                     }

              }

       }

}

 

Posted by Steven J.S Min
,