C#에서는 다국어에 대한 기능을 System.Globalization 네임스페이스에서 묶어두었다.
하위 카테고리는 문화(CultureInfo), 지역(RegionInfo) 등으로 세분화하고 있다.
샘플을 돌려보면 쉽게 이해가 된다. (출처: MSDN)
foreach (var ri in CultureInfo.GetCultures(CultureTypes.SpecificCultures)
.Select(ci => new RegionInfo(ci.ToString()))
.OrderBy(x => x.TwoLetterISORegionName))
{
Console.WriteLine("{0,3}: {1,11}: {2} ({3})", ri.TwoLetterISORegionName, ri, ri.EnglishName, ri.NativeName);
}
결과 파일을 첨부한다(utf-8 인코딩이다) langs.txt
ISO
URL에서 보면 국가 도메인이 있는데, ISO 3166이 관련 표준이다.
표준의 일부로 ISO 3166-1 이 있는데 세 자리 아라비아 숫자, 알파벳 두 글자/ 세글자로 구성되어 있다.
대한민국의 경우 410이라는 코드에 KOR, KR 이 각각 해당한다. 대문자를 사용하드라.
RFC
RFC 4646(Tags for Identifying Languages)은 언어에 대해 id를 붙이는 것에 다루고 있는데
en-US 와 같이 언어/지역을 구분해서 나누고 있다.
왜냐하면 영어라고 해도 영국식영어
언어에 대해서는 ISO 639-2; ISO 639-1 requires 2를 따른다고 적혀있다.
'Programing > 닷넷' 카테고리의 다른 글
[C#] GitHub 클라이언트의 오픈소스 기술들 (0) | 2015.02.09 |
---|---|
GitHub 클라이언트로 본 ClickOnce (0) | 2015.02.09 |
asp.net에서 경로에 ~을 사용하면 좋을 때 (0) | 2014.10.23 |
데이터 타입별로 접미어 정보 (0) | 2014.08.15 |
웹 프로젝트 DLL 참조 추가 (0) | 2014.05.28 |