기본 타입 스트림
: 바이트 스트림에 DataInputStream, DataOutputStream 보조스트림을 연결하면
기본 타입인 boolean, char, short, int, long, float, double 같을 입출력 할 수 있다
> 숫자나 논리값 같은 데이터를 쉽게 파일에 저장하거나 읽어오는 도구
- DataOutputStream (파일에 쓰기)
DataOutputStream 은 이 숫자들을 자동으로 바이트로 변환해서 파일에 써준다
FileDataOutputStream fileStream = new FileOutputStream("data.dat");
DataOutputStream dataOutputStream = new DataOutputStream (fileStream);
dataOutputStream.writerInt(42); // 숫자 42 저장
dataOutputStream.writerDouble(3.14); // 숫자 3.14 저장
- DataInputStream (파일에서 읽기)
저장한 파일에서 숫자를 읽어오고 싶을 때는 DataInputStream 사용
파일에서 바이트 데이터를 읽어올 때 DataInputStream은 알맞은숫자 형태로 자동변환된다
FileInputStream fileStream = new FileInputStream("data.dat");
DataInputStream dataInputStream = new DataInputStream(fileStream);
int number = dataInputStream.readInt(); // 저장된 42를 읽어옴
double value = dataInputStream.readDouble(); // 저장된 3.14를 읽어옴
DataOutputStream 은 숫자나 논리값을 쉽게 파일에 저장할 수 있게 도와준다
DataInputStream 은 파일에 저장된 숫자나 논리값을 쉽게 읽어올 수 있게 도와준다
DataOutputStream DataInputStream 제공하는 메소드
| 클래스 | 메소드 | 설명 |
| DataOutputStream | writeBoolean(boolean v) | boolean 값을 파일에 씁니다. |
| writeByte(int v) | byte 값을 파일에 씁니다. | |
| writeChar(int v) | char 값을 파일에 씁니다. | |
| writeShort(int v) | short 값을 파일에 씁니다. | |
| writeInt(int v) | int 값을 파일에 씁니다. | |
| writeLong(long v) | long 값을 파일에 씁니다. | |
| writeFloat(float v) | float 값을 파일에 씁니다. | |
| writeDouble(double v) | double 값을 파일에 씁니다. | |
| writeUTF(String s) | UTF-8 형식으로 문자열을 파일에 씁니다. | |
| writeBytes(String s) | 문자열을 바이트 배열로 변환하여 파일에 씁니다. | |
| writeChars(String s) | 문자열의 각 문자를 char 형식으로 파일에 씁니다. |
| 클래스 | 메소드 | 설명 |
| DataInputStream | readBoolean() | boolean 값을 파일에서 읽어옵니다. |
| readByte() | byte 값을 파일에서 읽어옵니다. | |
| readChar() | char 값을 파일에서 읽어옵니다. | |
| readShort() | short 값을 파일에서 읽어옵니다. | |
| readInt() | int 값을 파일에서 읽어옵니다. | |
| readLong() | long 값을 파일에서 읽어옵니다. | |
| readFloat() | float 값을 파일에서 읽어옵니다. | |
| readDouble() | double 값을 파일에서 읽어옵니다. | |
| readUTF() | UTF-8 형식으로 저장된 문자열을 파일에서 읽어옵니다. |
'Java' 카테고리의 다른 글
| Java_객체 스트림 (0) | 2024.10.22 |
|---|---|
| Java_프린트 스트림 (0) | 2024.10.22 |
| Java_보조스트림_성능 향상 스트림 (0) | 2024.10.22 |
| Java_보조스트림, 문자변환 스트림 (0) | 2024.10.21 |
| Java_데이터 입출력(Input.Output Stream)_입출력스트림 (0) | 2024.10.21 |