컴퓨터 엑셀 워드 포토숍 구글어스 WINDOWS JAVASCRIPT JAVA C++

 
Previous Post 자바(Java)가 지원하는 모든 인코딩 종류/이름 목록 보기: Java Supported ...Vim, Vi, GVim 에디터, 행번호, 줄번호 표시 명령어, 줄 번호 행 번호 보는 명...리눅스] 플로피 디스켓 드라이브 마운트 하기: Floppy Drive Mount Linux...리눅스] 디렉토리 만들기 명령, 디렉토리(폴더) 지우기 명령어: Make, Delete D...자바/Java] 숫자 배열(Array): 최소값/최대값 구하기: Min Max엑셀] 숫자를 한글로 읽기, 금액을 한자로 변환/문자로 변경 함수 NUMBERSTRINGC언어] 하드 디스크 남은 용량, 사용한 용량, 전체 용량 얻기 읽기: Get Disk F...C언어] 64비트 정수 __int64 사용법: 변수 선언, printf()로 출력C언어 팁] cl.exe: C소스 컴파일 + 컴파일된 프로그램 실행을 동시에 하는 법: H...C언어] cl.exe: 소스 파일 여러개 한꺼번에 컴파일하는 배치파일: Multiple S...

자바Java] 유니코드(UTF-8) 파일 출력, 유니코드 텍스트 파일 만들기: Unicode Output

Wednesday, October 11, 2006

자바의 출력 결과를 유니코드 파일로 직접 저장하는 방법입니다. 여기서는 가장 무난한 유니코드 형식인 UTF-8 인코딩(Encoding)으로 저장하는 것을 예로 들었습니다.

가나다라
똠방각하

위와 같은 2줄의 한글 문자열을, out.txt 라는 이름의 유니코드(UTF-8) 파일로 저장하는 예제 프로그램입니다.

유니코드(UTF-8) 파일로 결과 저장 예제


import java.io.*;

public class Foo {
  public static void main(String args[]) {
  try {
    BufferedWriter UniOutput = new BufferedWriter(
                                                  new OutputStreamWriter(
                                                                         new FileOutputStream("out.txt"),
                                                                         "UTF8"
                                                                         )
                                                  );

    UniOutput.write("가나다라");
    UniOutput.newLine();
    UniOutput.write("똠방각하");

    UniOutput.close();

  } catch (UnsupportedEncodingException e) {
      System.err.println(e);
      System.exit(1);
  } catch (IOException e) {
      System.err.println(e);
      System.exit(1);
  }

  }
}


만약 위의 소스 파일 자체도 UTF-8 인코딩으로 저장했다면,

javac -encoding UTF-8 Foo.java && java Foo

이렇게 소스의 인코딩을 지정하여 컴파일합니다. 단, BOM 이 있는 UTF-8 파일은 인식을 하지 못합니다.


OutputStreamWriter 의 인수에서, "UTF8" 를 "UTF-16LE" 등으로 바꾸면 "UTF-16" 인코딩으로 파일이 저장됩니다. 단, 이러면 BOM이 저장되지 않습니다. 봄을 저장하는 법: ▶▶ Java/자바] UTF-16LE, UTF-16BE BOM 쓰기, 유니코드 파일 출력; Write BOM


newLine() 이라는 메소드는, 각종 운영체제에 적합한 개행문자를 자동으로 선택하여 출력하는 것입니다. C언어와 달리, 자바에서는 그냥 \n 이렇게 하면 유닉스 개행문자가 찍히는데, newLine() 은 자동으로 운영체제를 판단하여 \r\n 이렇게 개행문자를 도스 텍스트 형식으로 출력합니다.



UTF-8 BOM 을 삽입하여 출력하는 법: ▶▶ Java/자바] UTF-8 BOM 있는 유니코드 파일 출력/만들기 예제

▶▶ [자바/Java] 유니코드 소스 파일 인코딩 인식시키기 - UTF-8 UTF-16 Unicode


▶▶ 자바/Java] 일본어 Shift-JIS 인코딩 파일 출력, 일본어 Encoding 소스 인식

☞ 자바(Java)

0 Comments:

Post a Comment

<< Home RSS 2.0 feed

구글 Google 에서 제공하는 무료 블로그 서비스인 블로거 Blogger 의 인터넷 주소는 www.blogger.com 입니다. Blogger 에 블로그를 만들면, blogspot.com 이라는 주소에 블로그가 생성됩니다.
블로그를 직접 방문하지 않고도 최신 게시물을 구독하려면 RSS 2.0 feed 주소를 리더기에 등록하시면 됩니다.
Categories
Previous Posts
Monthly Archives
Top