출처: https://bumcrush.tistory.com/182 [맑음때때로 여름]

–문자 스트림 


•유니코드로 된 문자를 입·출력 하는 스트림 
•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

+ Recent posts