728x90
바이트 기반 스트림 ( 입출력 단위가 1byte)
FileOutputStream
파일 생성
import java.io.FileOutputStream;
public class Main {
public static void main(String[] args) {
try {
FileOutputStream fileOutput = new FileOutputStream("eroom.txt");
String word = "E-room";
byte b[] = word.getBytes();
fileOutput.write(b);
fileOutput.close();
} catch (Exception e) {
System.out.println(e);
}
}
}
FileInputStream
파일을 읽어올 때 사용
FileOutputStream을 이용하여 생성한 파일을 읽어온다
import java.io.FileInputStream;
public class Main {
public static void main(String[] args) {
try {
FileInputStream fileInput = new FileInputStream("eroom.txt");
int i = 0;
//fileInput.read()의 리턴값을 i에 저장한 후, 값이 -1인지 확인
while ((i = fileInput.read()) != -1) {
System.out.print((char) i);
}
fileInput.close();
} catch (Exception e) {
System.out.println(e);
}
}
}
BufferedInputStream
성능이 향상되기 때문에, 대부분 이 방법을 사용
버퍼란 바이트 배열로서, 여러 바이트를 저장하여 한 번에 많은 양의 데이터를 입출력할 수 있도록 도와주는 임시저장공간
보조 스트림도 스트림의 하위 클래스이기 때문에 입출력 방법은 같음
import java.io.BufferedInputStream;
import java.io.FileInputStream;
public class Main {
public static void main(String[] args) {
try {
FileInputStream fileInput = new FileInputStream("eroom.txt");
BufferedInputStream bufferedInput = new BufferedInputStream(fileInput);
int i = 0;
while ((i = bufferedInput.read()) != -1) {
System.out.print((char) i);
}
fileInput.close();
} catch (Exception e) {
System.out.println(e);
}
}
}
728x90
'개발일지 > Java' 카테고리의 다른 글
Java File (0) | 2022.09.24 |
---|---|
Java FileReader, FileWriter (0) | 2022.09.24 |
Java Optional<T> (0) | 2022.09.24 |
Java 스트림 생성, 중간 연산, 최종 연산 (0) | 2022.09.20 |
Java 스트림(Stream) (0) | 2022.09.19 |