FileOutputStream / PrintWriter
2023. 1. 26. 16:37ㆍ프로그래밍 언어/JAVA
FileOutputStream이란?
- 파일의 글자나 문자나 숫자를 보내주는 통로다.
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintWriter;
public class Main {
public static void main(String[] args) throws FileNotFoundException {
//파일 객체 하나 만들기
File f = new File("abc.txt");
//통로 생성
FileOutputStream fos = new FileOutputStream(f);
//통로 넓게 넓히기(보조스트림)
PrintWriter pw = new PrintWriter(fos);
//데이터 내보내기
pw.write("hello Jonny");
pw.flush();
}
}
Main Stream의 종류
(1) input
- InputStream : 1바이트씩만 데이터를 읽어옴
- reader : 2바이트씩 데이터를 읽어옴
(2) output
- OutputStream : 1바이트씩만 데이터를 보냄
- writer : 2바이트씩 데이터를 보냄
- 이외에도 많지만, 그때그때 검색해서 사용하는 것이 좋다.
보조스트림이란?
- 메인스트림과 보조스트림이 있다.
- 보조스트림은 기본적인 통로를 확장시켜주고 싶을 때 데이터가 원활하게 왔다갔다 하고 싶을 때 사용하는 것이 보조 스트림이다.
- 보조스트림은 말그대로 보조라서, 단독으로는 사용이 안되고 메인스트림이 있어야만 사용이 가능하다.
- 메인스트림을 먼저 만들고 메인스트림에 보조스트림을 연결해서 사용한다.
import java.io.FileReader;
import java.io.File;
import java.io.BufferedReader;
public class Main {
public static void main(String[] args) throws Exception {
//파일 객체 생성
File f = new File("abc.txt");
//통로 생성
FileReader fr = new FileReader(f);
//통로 넓히기(보조 스트림 생성)
BufferedReader br = new BufferedReader(fr);
//데이터 읽기
String str = br.readLine();
//데이터 출력
System.out.println(str); //"hello Jonny"
}
}
//여러 줄을 읽어오고 싶을 때
import java.io.FileReader;
import java.io.File;
import java.io.BufferedReader;
public class Main {
public static void main(String[] args) throws Exception {
//파일객체 생성
File f = new File("abc.txt");
//통로 생성
FileReader fr = new FileReader(f);
//통로를 넓히기
BufferedReader br = new BufferedReader(fr);
while(true) {
String str = br.readLine();
//마지막인지 검사
if(str == null) {
break;
}
System.out.println(str);
}
}
}
'프로그래밍 언어 > JAVA' 카테고리의 다른 글
Wrapper 클래스 (0) | 2023.01.26 |
---|---|
기본 API - 문자열 클래스 (0) | 2023.01.26 |
Catch/ throw (0) | 2023.01.25 |
파일 입출력 - BufferedReader, BufferedWriter (0) | 2023.01.20 |
파일 입출력 - FileWriter, FileReader (0) | 2023.01.20 |