개발이 좋아서/Java가 좋아서

I/O 기본2 - 기타 스트림

zoaseo 2024. 11. 26. 16:23

- PrintStream

public static void main(String[] args) throws FileNotFoundException {
    FileOutputStream fos = new FileOutputStream("temp/print.txt");
    PrintStream printStream = new PrintStream(fos);

    printStream.println("hello java!");
    printStream.println(10);
    printStream.println(true);
    printStream.printf("hello %s", "world");
    printStream.close();
}
hello java!
10
true
hello world

 

 

- DataStream

public static void main(String[] args) throws IOException {
    FileOutputStream fos = new FileOutputStream("temp/data.dat");
    DataOutputStream dos = new DataOutputStream(fos);

    dos.writeUTF("회원A");
    dos.writeInt(20);
    dos.writeDouble(10.5);
    dos.writeBoolean(true);
    dos.close();

    FileInputStream fis = new FileInputStream("temp/data.dat");
    DataInputStream dis = new DataInputStream(fis);
    System.out.println(dis.readUTF());
    System.out.println(dis.readInt());
    System.out.println(dis.readDouble());
    System.out.println(dis.readBoolean());
    dis.close();
}

 

- temp/data.dat

 회원A   @%      

그대로 넣었기 때문에 인식이 안된다.

 

- 콘솔창 (반드시 순서대로 읽어야 한다!)

회원A
20
10.5
true