–문자 스트림
•유니코드로 된 문자를 입·출력 하는 스트림
•2바이트를 입·출력 - 세계 모든 언어로 구성된 파일을 입·출력 하기에 적합
•이미지, 동영상과 같은 바이너리 데이터는 입·출력 할 수 없음
•문자 데이터만 입·출력 가능
Reader의 대표적인 메소드
public int read() throws IOException
public abstract int read(char[] cbuf, int off, int len) throws IOException
Writer의 대표적인 메소드
public int write(int c) throws IOException
public abstract void write(char[] cbuf, int off, int len) throws IOException
BufferedWriter
package io;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.io.Writer;
public class StringWriter {
public static void main(String[] args) throws IOException {
// 필터스트림 : 기본 스트림 writer가 필요하다.
Writer writer = new FileWriter("String.txt"); // 기본스트림
BufferedWriter out = new BufferedWriter(writer); // 필터스트림
out.write("Cos ah ah I’m in the stars tonight");
out.newLine();
out.write("So watch me bring the fire and set the night alight");
out.newLine();
out.write("Shining through the city with a little funk and soul");
out.newLine();
out.write("So I’mma light it up like dynamite, woah");
out.newLine();
out.newLine();
out.write("BTS - Dynamite");
// 스트림닫기
out.close();
}
}
BufferedReader
package io;
import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;
import java.io.BufferedReader;
public class StringReader {
public static void main(String[] args) throws IOException{
// 문자 기반 기본 스트림 인스턴스 생성
Reader reader = new FileReader("String.txt");
// 필터스트림
BufferedReader in = new BufferedReader(reader);
// 한행의 문자열을 담을 변수
String str=null;
while(true) {
//한줄씩 읽어 문자열을 반환, 없으면 null
str=in.readLine();
if(str==null) {
break;
}
System.out.println(str);
}
}
}
문자 필터 스트림 PrintWriter
package io;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
public class PrintWriterStream {
public static void main(String[] args) throws IOException {
PrintWriter out = new PrintWriter(new FileWriter("Print.txt"));
out.printf("안녕하세요 저는 %d살 %s입니다.",12,"철수");
out.println();
out.print("저는 자바를 좋아합니다");
out.println("IO 재미있네요.");
out.close();
System.out.println("파일작성 완료");
}
}
'JAVA > basic' 카테고리의 다른 글
[ 입출력 ] 버퍼 스트림 (0) | 2020.10.26 |
---|---|
[ 입출력 ] File (0) | 2020.10.26 |
[ 입출력 ] 직렬화 (Serializable) (0) | 2020.10.26 |
[ 입출력 ] Stream / 바이트스트림 (0) | 2020.10.26 |
Map <K, V> / HashMap <K, V> key-value (0) | 2020.10.23 |
[ 컬렉션 Collection<E> ] TreeSet (0) | 2020.10.23 |
[ 컬렉션 Collection<E> ] HashSet (0) | 2020.10.23 |