120 likes | 324 Views
Delphi 2009 / C++Builder 2009 의 Unicode 및 Internationalization 지원 박지훈 . 임프 cbuilder1@borlandforum.com. 목차. Unicode Internationalization. 2. Unicode. 개요 전세계 모든 언어 문자들을 단일 문자 체계로 사용할 수 있게 해주는 메커니즘 / 인코딩 The Unicode Consortium Unicode Encoding UCS-2/UCS-4, UTF-8/UTF-16/UTF-32
E N D
Delphi 2009 / C++Builder 2009의Unicode 및 Internationalization지원 박지훈.임프 cbuilder1@borlandforum.com
목차 • Unicode • Internationalization 2
Unicode • 개요 • 전세계 모든 언어 문자들을 단일 문자 체계로 사용할 수 있게 해주는 메커니즘/인코딩 • The Unicode Consortium • Unicode Encoding • UCS-2/UCS-4, UTF-8/UTF-16/UTF-32 • Delphi 2009/C++Builder 2009 : UTF-16 (Windows) • Code point 크기 : 2Byte • 대부분의 문자가 2Byte지만 일부 4Byte도 있다 (Surrogate Pairs) -> 가변 길이
Delphi 2009 / C++Builder 2009 • 개발툴 전반에서 Unicode 지원 • IDE / RTL / VCL • dbExpress • 한글 identifier • C++에서도 한글 identifier 사용 가능
Delphi 2009 / C++Builder 2009의 Unicode • UTF-16 • string = UnicodeString; • (과거에는 string = AnsiString) • Char = WideChar; • UnicodeString (vs. WideString) • Reference Counting 지원 • 각 문자는 WideChar
Unicode 관련 RTL • Unicode 지원 클래스들 • TCharacter class • TEncoding class • 인코딩을 지정해야 할 경우 (TEncoding.Unicode) • TStringBuilder class • Append, Insert, Replace 등의 동작 (.NET 호환) • TBytesStream • RawByteString • RawByteString = type AnsiString($FFFF); • 인코딩이 지정되지 않은 스트링 타입
참고 링크들 • “델파이의 유니코드 지원”연재 기사 • http://delphi.borlandforum.com/impboard/impboard.dll?action=read&db=del_tutorial&no=135 • http://delphi.borlandforum.com/impboard/impboard.dll?action=read&db=del_tutorial&no=136 • http://delphi.borlandforum.com/impboard/impboard.dll?action=read&db=del_tutorial&no=137 • Tiburon’s LoadFromFile and SaveToFile for Unicode characters • http://blogs.codegear.com/davidi/2008/07/15/38898 • Tiburón - String Theory • http://blogs.codegear.com/abauer/2008/07/16/38864/ • Unicode database support in Tiburon for Delphi and C++ • http://blogs.codegear.com/davidi/2008/07/15/38895 • Using RawByteString Effectively • http://www.micro-isv.asia/2008/08/using-rawbytestring-effectively/ • Don’t Get Caught with Boxes • http://blogs.codegear.com/nickhodges/2008/07/17/39073
Internationalization • ITE (Internal Translation Environment) • IDE에 통합되어 있는 번역 환경 • ETM (External Translation Manager) • 외부 번역 전문가에게 전달할 수 있는 툴 • Extras에 배포 방법 문서