맨위로가기

로케일

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

로케일은 표시 언어, 숫자, 날짜/시간, 통화 형식 등 출력 형식을 지정하는 설정이다. 로케일 설정은 숫자 형식, 문자 분류, 날짜-시간 형식, 문자열 정렬, 통화 형식, 용지 크기, 색상, UI 글꼴, 위치, ANSI 문자 집합 설정 등을 포함한다. 국제 표준으로 C 및 C++에서는 LC_COLLATE, LC_CTYPE, LC_MONETARY, LC_NUMERIC, LC_TIME 범주로 정의되며, POSIX 플랫폼에서는 ISO/IEC 15897에 의해 정의되고 BCP 47 언어 태그 정의와 유사한 형식을 사용한다. 윈도우는 언어와 지역 문자열을 사용하며, LCID라는 로케일 식별자를 사용한다. C, C++, 자바, 파이썬 등 다양한 프로그래밍 언어와 환경에서 로케일을 지원하며, ISO 639 및 ISO 3166-1 alpha-2 코드를 기반으로 정의한다.

더 읽어볼만한 페이지

  • 국제화와 지역화 - 언어 현지화
    언어 현지화는 특정 지역의 문화, 언어, 법률 등을 고려하여 제품이나 서비스를 적응시키는 포괄적인 과정으로, 세계화 전략의 핵심 단계인 국제화 이후에 수행되며, 다양한 기술과 방법으로 이루어져 시장에서의 성공적인 출시와 성장에 필수적이다.
  • 국제화와 지역화 - ISO 3166
    ISO 3166은 국가, 속령, 특별 지역 및 그 하위 구분에 대한 코드를 정의하는 국제 표준으로, ISO 3166-1, ISO 3166-2, ISO 3166-3으로 구성되어 있으며 ISO 3166/MA에 의해 관리 및 업데이트된다.
  • 유닉스 사용자 관리 및 지원 관련 유틸리티 - 업타임
    업타임은 시스템이나 장치가 중단 없이 작동한 시간을 나타내는 지표로, 시스템 안정성을 보여주는 중요한 지표이며, 넷크래프트는 웹 호스팅 컴퓨터의 업타임 기록을 관리하고, 다양한 운영체제에서 시스템 가동 시간을 확인하는 방법을 제공한다.
  • 유닉스 사용자 관리 및 지원 관련 유틸리티 - Passwd
    유닉스 계열 운영체제에서 Passwd는 사용자 계정 정보를 관리하는 파일 및 시스템으로, `/etc/passwd` 파일에 사용자 이름, ID, 홈 디렉토리 등의 정보를 담고, 비밀번호는 `/etc/shadow`에 암호화하여 저장하며, PAM을 통해 다양한 인증 방식을 지원한다.
  • 유닉스 SUS2008 유틸리티 - AWK
    AWK는 1977년에 개발된 텍스트 처리 및 프로그래밍 언어로, 유닉스 환경에서 텍스트 처리를 위해 설계되었으며 정규 표현식 처리 기능을 통해 텍스트 분석, 데이터 추출, 보고서 생성 등 다양한 작업을 수행한다.
  • 유닉스 SUS2008 유틸리티 - Ps (유닉스)
    `ps` 명령어는 유닉스 계열 운영체제에서 실행 중인 프로세스의 ID, CPU 사용량, 메모리 사용량, 실행 시간, 상태 등 자세한 정보를 표시하며, 파이프를 통해 다른 명령어와 결합하여 활용된다.
로케일
로케일
로케일 (영어)Locale
로케일 (프랑스어)Environnement local
설명소프트웨어의 동작 방식을 특정 지역의 관습, 문화 및 언어에 맞게 조정하는 데 사용되는 매개변수 집합
세부 정보
식별자언어 및 지역 식별을 위한 표준화된 이름 (예: "en_US"는 미국 영어를 의미)
기능숫자, 날짜, 시간, 통화 형식 지정
문자 정렬 (collation)
문자 인코딩
메시지 번역
구현운영체제 (예: 유닉스, 윈도우)
프로그래밍 언어 (C, 자바, 파이썬)
라이브러리
환경 변수 (유닉스 계열)LC_ALL: 모든 로케일 범주를 설정
LC_COLLATE: 문자 정렬 순서 설정
LC_CTYPE: 문자 처리 및 분류 설정
LC_MONETARY: 통화 형식 설정
LC_NUMERIC: 숫자 형식 설정
LC_TIME: 날짜 및 시간 형식 설정
LANG: LC_* 변수가 설정되지 않았을 때 기본 로케일 설정
예시 (C 언어)setlocale(LC_ALL, "fr_FR"); // 프랑스 로케일 설정
활용
소프트웨어 개발다국어 지원 (i18n) 및 지역화 (l10n) 구현
웹 개발웹 페이지 및 애플리케이션의 지역화
데이터 처리지역별 데이터 형식에 따른 처리 및 분석
관련 기술
gettext메시지 번역을 위한 라이브러리
ICU유니코드 및 국제화를 위한 라이브러리

2. 일반 로케일 설정

로케일 설정은 일반적으로 표시 언어, 숫자, 날짜/시간, 시간대, 일광 절약 시간 (DST), 통화 형식 등의 출력 형식 설정을 포함한다.

로케일 설정은 주어진 로케일에 대한 출력 형식을 지정한다. 시간대 정보 및 일광 절약 시간제는 일반적인 로케일 설정에 포함되지 않는다. 입력 형식 설정은 덜 일반적이며, 주로 응용 프로그램별로 정의된다.[1][2][3][4][5][6]

2. 1. 표시 형식 설정

로케일 설정은 보통 다음의 표시 형식 설정을 포함하고 있다.

  • 표시 언어 설정
  • 숫자 형식 설정
  • 날짜/시간 형식 설정
  • 시간대 설정
  • 일광 절약 시간 (DST) 설정
  • 통화 형식 설정


이러한 설정에는 일반적으로 다음과 같은 표시(출력) 형식 설정이 포함된다.

  • 숫자 형식 설정 (LC_NUMERIC)[1]
  • 문자 분류, 대소문자 변환 설정 (LC_CTYPE)[2]
  • 날짜-시간 형식 설정 (LC_TIME)[3]
  • 문자열 정렬 설정 (LC_COLLATE)[4]
  • 통화 형식 설정 (LC_MONETARY)[5]
  • 용지 크기 설정 (LC_PAPER)[6]
  • 색상 설정
  • UI 글꼴 설정 (특히 CJKV 언어의 경우)
  • 위치 설정 (국가 또는 지역)
  • ANSI 문자 집합 설정 (Microsoft Windows의 경우)


로케일 설정은 로케일이 주어졌을 때 출력 형식을 지정하는 것이다. 따라서 시간대 정보 및 일광 절약 시간제는 일반적으로 로케일 설정의 일부가 아니다. 덜 일반적인 것은 입력 형식 설정이며, 이는 주로 응용 프로그램별로 정의된다.

2. 2. 기타 설정

로케일은 일반적으로 다음과 같은 표시 형식 설정을 포함한다.

  • 표시 언어 설정
  • 숫자 형식 설정
  • 날짜/시간 형식 설정
  • 시간대 설정
  • 일광 절약 시간 (DST) 설정
  • 통화 형식 설정


이러한 설정에는 일반적으로 다음과 같은 표시(출력) 형식 설정이 포함된다.

  • 숫자 형식 설정 (LC_NUMERIC, C/C++)
  • 문자 분류, 대소문자 변환 설정 (LC_CTYPE, C/C++)
  • 날짜-시간 형식 설정 (LC_TIME, C/C++)
  • 문자열 정렬 설정 (LC_COLLATE, C/C++)
  • 통화 형식 설정 (LC_MONETARY, C/C++)
  • 용지 크기 설정 (ISO 30112)
  • 색상 설정
  • UI 글꼴 설정 (특히 CJKV 언어의 경우)
  • 위치 설정 (국가 또는 지역)
  • ANSI 문자 집합 설정 (Microsoft Windows의 경우)


로케일 설정은 주어진 로케일에 대한 출력 형식을 지정하는 것이다. 따라서 시간대 정보 및 일광 절약 시간제는 일반적으로 로케일 설정의 일부가 아니다. 덜 일반적인 것은 입력 형식 설정이며, 이는 주로 응용 프로그램별로 정의된다.

3. 국제 표준

표준 C 및 C++에서 로케일은 텍스트 정렬(), 문자 클래스(), 통화 형식(), 숫자 형식(), 시간 형식() 등의 범주로 정의된다. 모든 로케일 설정을 한 번에 지정하기 위해 특수 범주인 이 사용된다.[1]

C 및 C++ 표준과 관련된 표준 로케일 이름은 "C"라는 "최소 로케일" 이름을 제외하고는 없지만, POSIX 형식은 일반적으로 사용되는 기준이다.

3. 1. POSIX 플랫폼

POSIX 플랫폼에서 로케일 식별자는 ISO/IEC 15897에 의해 정의되며, 이는 BCP 47 언어 태그 정의와 비슷하지만 로케일 종류 수정자는 다양하게 정의되며 문자 집합은 식별자의 일부로 포함된다.[2]

유닉스, 리눅스 등과 같은 POSIX 플랫폼에서 로케일 식별자는 BCP 47 언어 태그 정의와 유사한 방식으로 정의되지만, 로케일 변형 수정자는 다르게 정의되며, 문자 집합은 선택적으로 식별자의 일부로 포함된다. POSIX 또는 "XPG" 형식은 `language[_territory][.codeset][@modifier]`이다. (예를 들어, UTF-8 인코딩을 사용하는 오스트레일리아 영어는 `en_AU.UTF-8`이다.)[2]

3. 2. Microsoft Windows

윈도우는 특정 [https://web.archive.org/web/20170228045725/https://msdn.microsoft.com/en-us/library/39cwe7zf(vs.71).aspx 언어]와 [https://web.archive.org/web/20160610104759/https://msdn.microsoft.com/en-us/library/cdax410z(VS.71).aspx 지역] 문자열을 사용한다. 마이크로소프트 윈도우에서 관리되지 않는 코드의 ''로케일 식별자''(LCID)는 영어 (미국)의 경우 1033, 영어 (영국)의 경우 2057, 일본어 (일본)의 경우 1041과 같은 숫자이다.[4] 이 숫자들은 언어 코드(하위 10비트)와 문화 코드(상위 비트)로 구성되어 있으며, 따라서 0x0409, 0x0809 또는 0x0411과 같은 16진수 표기법으로 종종 작성된다.

마이크로소프트는 이 형식을 사용하는 .NET용 관리 코드 응용 프로그래밍 인터페이스(API)를 도입하기 시작했으며, Windows Vista Beta 1에서 더 많은 기능이 출시되었다.[4]

Windows Vista부터, BCP 47 로케일 이름을 사용하는 새로운 함수[5]가 도입되어 거의 모든 LCID 기반 API를 대체했다.

language[_country-region[.code-page]]영어 형식의 POSIX 유사 로케일 이름 형식은 윈도우 10 및 11의 UCRT (Universal C Run Time)에서 사용할 수 있다.[6]

4. 프로그래밍/마크업 언어 지원

다양한 프로그래밍 및 마크업 언어가 로케일 설정을 지원한다. C, C++, 에이펠, 자바, 닷넷 프레임워크, REBOL, 루비, , PHP, 파이썬, XML, JSP, 자바스크립트 등과 같은 프로그래밍 환경과 기타 유니코드 기반 환경에서 로케일은 BCP 47과 유사한 형식으로 정의된다. 보통 ISO 639 (언어) 및 ISO 3166-1 alpha-2 (2자리 국가) 코드만으로 정의된다.

4. 1. 주요 지원 언어

C, C++, 에이펠, 자바, 닷넷 프레임워크, REBOL, 루비, , PHP, 파이썬, XML, JSP, 자바스크립트 등과 같은 프로그래밍 환경과 기타 유니코드 기반 환경에서 로케일은 BCP 47과 유사한 형식으로 정의된다. 보통 ISO 639 (언어) 및 ISO 3166-1 alpha-2 (2자리 국가) 코드만으로 정의된다.

4. 2. 유니코드 기반 환경

오늘날 대부분의 유니코드 기반 환경에서는 BCP 47과 유사한 형식으로 로케일을 정의한다. 일반적으로 ISO 639 (언어) 및 ISO 3166-1 alpha-2 (2자리 국가) 코드만으로 정의된다.[1]

이러한 환경에는 C, C++, Eiffel, Java, .NET Framework, REBOL, 루비, Perl, PHP, 파이썬, XML, JSP, 자바스크립트 등이 있다.[1]

참조

[1] 웹사이트 LC_ALL, LC_COLLATE, LC_CTYPE, LC_MONETARY, LC_NUMERIC, LC_TIME - cppreference.com https://en.cpprefere[...]
[2] 웹사이트 Environment Variables https://pubs.opengro[...]
[3] 웹사이트 ISO/IEC JTC1/SC22 N610 [draft ISO/IEC 15897:1998(E)] Information technology — Procedures for registration of cultural elements https://www.open-std[...] 1998-11-17
[4] 웹사이트 DownlevelGetLocaleScripts function (Windows) https://msdn.microso[...] Microsoft 2017-12-11
[5] 웹사이트 Locale Names (Windows) https://docs.microso[...] Microsoft 2017-12-11
[6] 웹사이트 Locale Names, Languages, and Country-Region Strings https://learn.micros[...] 2022-10-19



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com