mwultong Blog ... 프로그래밍 / 계산기

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

 
Tuesday, August 01, 2006

Perl : 유니코드의 한글 낱자 11172자를 코드 번호와 함께 파일로 출력하기 - Unicode UTF-8


유니코드는 현대 한글 낱자 11172자가 모두 표현됩니다. (똠방각하의 '똠'자 등도 물론 여기에 들어 있습니다.)

유니코드의 한글 낱자 영역은

U+AC00:가
에서 시작하여

U+D7A3:힣
으로 끝납니다. 즉, "힣"이 한글이 표현할 수 있는 가장 마지막 글자입니다. "가"는 가장 첫 번째입니다.


AC00 이나 D7A3 은 16진수인데, 각 글자에 매겨진 일련 번호입니다.

원칙적으로는 U+AC00 이런 식으로 표현해야 하지만, 여기서는 간략하게 출력하도록 했습니다.

펄 코드:
#!/usr/bin/perl
use strict; use warnings;

use encoding "utf8", STDOUT => "utf8";


  for (my $i = 0xAC00; $i <= 0xD7A3; $i++) {
      printf("%04X:%s\n", $i, chr($i));
  }


이 코드를 0.pl 등의 이름으로 저장하고, 액티브펄(ActivePerl) 등으로 실행하면, 결과가 화면에 나타나지만, 윈도의 명령 프롬프트 화면은 유니코드 출력을 제대로 보여주지 못합니다.

그래서
0.pl > out.txt
이렇게 재지향(Redirection)(Piping)을 사용하여 파일로 저장해야 합니다.

출력 결과인 out.txt 파일은 UTF-8 유니코드로 되어 있습니다. 그런데 개행문자가 UNIX 스타일이기에, 윈도 메모장에서는 잘 보이지 않습니다. 울트라에디트나 Vim(VI) 에디터로 열어야 제대로 보입니다. 그런데 Vim 에디터는, UTF-8을 자동으로 인식하지 못하더군요. Vim에서 out.txt 파일을 연 후, 콜론(:)키를 눌러 명령어 모드로 들어가서
set enc=utf-8
또는
se enc=utf8
이라는 명령을 입력해 주어야 한글이 제대로 보입니다.




이것은 out.txt 의 내용, 즉 위에 있는 펄 코드의 출력 결과의 극히 일부입니다.
AC00:가
AC01:각
AC02:갂
AC03:갃
AC04:간
AC05:갅
AC06:갆
AC07:갇
AC08:갈
AC09:갉
AC0A:갊
AC0B:갋
AC0C:갌
AC0D:갍
AC0E:갎
AC0F:갏
AC10:감
AC11:갑
AC12:값
AC13:갓

...중략...

D790:힐
D791:힑
D792:힒
D793:힓
D794:힔
D795:힕
D796:힖
D797:힗
D798:힘
D799:힙
D79A:힚
D79B:힛
D79C:힜
D79D:힝
D79E:힞
D79F:힟
D7A0:힠
D7A1:힡
D7A2:힢
D7A3:힣




▶▶ 유니코드(UTF-8) 문자에 번호(Code Point) 붙이기 [펄/Perl]

▶▶ Perl, 한글 확장완성형 코드표 생성기 - Hangul Wansung Code Table Generator


한글 낱자만 모두 표시한 도표: ▶▶ 모든 한글 낱자 11172자 목록 (유니코드; Unicode)




tag: perl
Perl | 펄

0 Comments:

<< Home RSS 2.0 feed

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