구글링을 통해 JAVA를 활용한 한글 인코딩 처리에 대해 자료를 찾아봤는데 정확하고 좋은 자료가 많지 않았다.
위 블로그에서는 자바에서 String은 UTF-8로 취급된다..고 언급하고 있다.
그러나 내가 해보니 JAVA 프로그램 소스 파일의 인코딩을 따라가는 것 같다.
소스파일이 MS949 방식이면 파일 입출력에서도 MS949 방식을 따른다.
따라서 인코딩 형식이 UTF-8 포맷의 소스파일에서 파일 입력과 출력을 MS949 형식으로 된 것을 하려면 이렇게 해야한다.
따라서 MS949 인코딩으로 된 텍스트 파일을 읽어서 UTF-8 로 저장하고 싶다면, 위에는 MS949, 아래엔 UTF-8로 입력부와 출력부를 잡아주면 된다.
//파일 입력 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로 입력부와 출력부를 잡아주면 된다.