[Java] I/O - 한글파일 읽어오기

고동이의 IT·2021년 11월 15일
0

Java

목록 보기
28/37
post-thumbnail

기본 인코딩 방식으로 파일의 내용 불러오기

FileInputStream fin = new FileInputStream("d:/d_other/test_ansi.txt");
 InputStreamReader isr = new InputStreamReader(fin);

인코딩 방식을 지정해서 읽어오기

[인코딩 방식 예시]

  • ms949 : 윈도우의 기본 한글 인코딩 방식(ANSI방식과 같다.)
  • UTF-8: 유니코드 UTF-8 인코딩 방식
  • US-ASCII: 영문 전용 인코딩 방식
FileInputStream fin = new FileInputStream("d:/d_other/test_ansi.txt");
InputStreamReader isr = new InputStreamReader(fin, "ms949");
public class FileIOTest05 {

	public static void main(String[] args) {
		// 한글 내용이 있는 파일 읽어오기
		// (한글의 인코딩 방식을 지정해서 읽어오기)

		try {
			// FileReader fr = new FileReader("d:/d_other/test_ansi.txt");
			// FileReader fr = new FileReader("d:/d_other/test_utf8.txt");

			FileInputStream fin = new FileInputStream("d:/d_other/test_ansi.txt");
			//FileInputStream fin = new FileInputStream("d:/d_other/test_utf8.txt");

			// 기본 인코딩 방식으로 읽어온다.
			// InputStreamReader isr = new InputStreamReader(fin);
			
			// 인코딩 방식을 지정해서 읽어오기
			// 인코딩 방식 예시
			// ms949 : 윈도우의 기본 한글 인코딩 방식(ANSI방식과 같다.)
			// UTF-8: 유니코드 UTF-8 인코딩 방식
			// US-ASCII: 영문 전용 인코딩 방식
			
			InputStreamReader isr = new InputStreamReader(fin, "ms949");

			int c;
			while((c=isr.read())!=-1){
				System.out.print((char)c);
			}

			isr.close();

		} catch (IOException e) {
			// TODO: handle exception
		}

	}

}
profile
삐약..뺙뺙

0개의 댓글