728x90

구글링을 통해 JAVA를 활용한 한글 인코딩 처리에 대해 자료를 찾아봤는데 정확하고 좋은 자료가 많지 않았다.


위 블로그에서는 자바에서 String은 UTF-8로 취급된다..고 언급하고 있다.

그러나 내가 해보니 JAVA 프로그램 소스 파일의 인코딩을 따라가는 것 같다.
소스파일이 MS949 방식이면 파일 입출력에서도 MS949 방식을 따른다.

따라서 인코딩 형식이 UTF-8 포맷의 소스파일에서 파일 입력과 출력을 MS949 형식으로 된 것을 하려면 이렇게 해야한다.




1
2
3
4
5
6
7
8
9
10
//파일 입력
FileInputStream fileInputStream = new FileInputStream(filePath);
InputStreamReader inputStreamReader = new InputStreamReader(fileInputStream, "MS949");
BufferedReader bufferedReader = new BufferedReader(inputStreamReader);
 
 
//파일 출력
FileOutputStream fileOutputStream = new FileOutputStream(filePath);
OutputStreamWriter OutputStreamWriter = new OutputStreamWriter(fileOutputStream, "MS949");
BufferedWriter bufferedWriter = new BufferedWriter(OutputStreamWriter);

 
 
따라서 MS949 인코딩으로 된 텍스트 파일을 읽어서 UTF-8 로 저장하고 싶다면, 위에는 MS949, 아래엔 UTF-8로 입력부와 출력부를 잡아주면 된다.


Posted by 앗뜨거
,