프로그래밍 공부/JAVA예제
JAVA - File I/O (인코딩)
뚜뚜:)
2020. 11. 9. 00:34
//한글이 저장된 파일 읽어오기 ( 한글의 인코딩을 지정해서 읽어오는 예제 )
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class FileIOtest {
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");
//파일을 읽어올 때나 저장할 때 인코딩 방식을 지원하는 스트림
//입력용 : InputStreamReader
//출력용 : OutputStreamReader
// BYTE기반의 파일 입력용 스트림 객체 생성
// FileInputStream fin = new FileInputStream("d:/D_Other/test_ansi.txt");
FileInputStream fin = new FileInputStream("d:/D_Other/1104.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=fr.read()) != -1) {
System.out.print((char)c);
}
fr.close(); */
while( (c=isr.read()) != -1) {
System.out.print((char)c);
}
} catch (IOException e) {
// TODO: handle exception
}
}
}