Java
[Java] 데이터 입출력(2) BufferedReader, BufferedWriter
happyhelen
2021. 8. 9. 20:27
InputStream, OutputStream 은 바이트단위였다면
BufferedReader, BufferedWriter 는 문자단위로 읽고 쓴다
(실무에서는 대부분의 이미지, 동영상, 텍스트 파일은 바이트단위여서 input, output을 더 자주쓰긴 한다)
InputStream, OutputStream
BufferedReader
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class No17_BufferedR {
public static void main(String[] args) {
String fileName = "C:\\Users\\1\\Hellojava.txt";
BufferedReader br = null;
FileReader fr = null;
try {
fr = new FileReader(fileName); // 파일리더로 파일 읽기
br = new BufferedReader(fr); // fr을 매개변수로 br 에 담아놓기(확장)
String strLine;
// 한줄씩 읽어오는 readLine()
while((strLine = br.readLine()) != null) System.out.println(strLine);
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if(br!= null) br.close();
if(fr != null) fr.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
BufferedWriter
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
public class No17_BufferedW {
public static void main(String[] args) {
String fileName = "C:\\Users\\1\\Hellojava_bf.txt";
FileWriter fw = null;
BufferedWriter bw = null;
try {
String str = "Hello java world!!@\n";
str += "Hello C world too##\n";
str += "Hello Python world hehe\n";
fw = new FileWriter(fileName); // fileName으로 FileWriter 생성
bw = new BufferedWriter(fw); // fw 로 FileWriter 확장 -> BufferedWriter
bw.write(str);
System.out.println("확인차 end");
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
// bw, fw 순서바뀌면 IOException
if(bw != null) bw.close();
if(fw != null) fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}