.properties
1. 개요
.properties 파일은 키-값 쌍으로 구성된 프로퍼티를 저장하는 데 사용되는 텍스트 기반의 설정 파일 형식이다. 각 줄은 하나의 프로퍼티를 나타내며, 키와 값은 '=', ':', 또는 공백 등으로 구분된다. 주석은 '#' 또는 '!'로 시작하며, 백슬래시를 사용하여 특수 문자를 이스케이프하거나 여러 줄에 걸쳐 값을 정의할 수 있다. Java 9 이전에는 ISO/IEC 8859-1 인코딩을 사용했으며, Java 9 이상에서는 UTF-8을 기본 인코딩으로 지원한다. 다양한 텍스트 편집기나 특수 도구를 사용하여 파일을 편집할 수 있으며, Java 외에도 Apache Flex, mod_jk, Perl, SAPUI5, Npm, PHP, Spring Framework 등에서 활용된다.
| 국호 | 한국어: 키프로스 공화국 그리스어: Κυπριακή Δημοκρατία (키프리아키 디모크라티아) 튀르키예어: Kıbrıs Cumhuriyeti (크브르스 줌후리예티) |
|---|
이미지 준비중입니다.
| 국가 | Ύμνος εις την Ελευθερίαν (자유의 찬가) |
|---|
| 정치 체제 | 단일 대통령 중심제 공화국 |
|---|---|
| 대통령 | 니코스 흐리스토둘리데스 |
| 의회 | 키프로스 하원 |
| 독립 | 영국으로부터 독립: 1960년 8월 16일 |
|---|---|
| 현재 헌법 채택 | 1960년 8월 16일 |
| 위치 | 키프로스 섬 |
|---|---|
| 면적 | 9,251 km² (181위) |
| 면적 설명 | (섬 전체 면적) |
| 인구 | 2021년: 1,244,000명 (158위) |
|---|---|
| 인구 밀도 | 134명/km² (87위) |
| 민족 구성 | 그리스계 키프로스인 튀르크계 키프로스인 기타 |
| 공용어 | 그리스어 튀르키예어 |
| 주요 언어 | 영어 |
| 종교 | 동방 정교회 이슬람교 |
| 통화 | 유로 (€, EUR) |
|---|---|
| GDP (명목) | 2023년: 314억 7천 9백만 달러 (121위) |
| GDP (구매력 평가) | 2023년: 388억 4천 5백만 달러 (119위) |
| 시간대 | 동유럽 표준시 (EET) (UTC+2) |
|---|---|
| 여름 시간 (DST) | 동유럽 일광 절약 시간 (EEST) (UTC+3) |
| 국가 코드 | CYP |
| ISO 3166-1 | CY |
| 국가 도메인 | .cy |
| 전화 코드 | +357 |
-
파일 확장자 -
스크래치 (프로그래밍 언어)
스크래치는 MIT 미디어 연구소에서 개발한 어린이 및 입문자를 위한 시각적 프로그래밍 언어이며, 블록 기반 방식을 통해 애니메이션, 게임, 스토리 등을 만들 수 있도록 설계되었고, 코드 공유 및 재사용을 장려하며 다양한 교육 환경에서 활용된다. -
파일 확장자 -
매니페스트 파일
매니페스트 파일은 소프트웨어 배포 시 포함되는 파일로, 배포 파일 목록과 추가 정보를 담아 소프트웨어 배포 용이, 버전 관리, 의존성 관리, 오프라인 실행 지원, 앱 설치 및 공유 간편화 등의 기능을 제공한다. -
설정 파일 -
MSDOS.SYS
-
설정 파일 -
AUTOEXEC.BAT
AUTOEXEC.BAT는 도스 및 초기 윈도우 운영 체제에서 컴퓨터 시동 시 실행되어 환경 변수 설정, 시스템 유틸리티 실행 등에 사용되는 배치 파일이다. -
자바 (프로그래밍 언어) -
자바 애플릿
-
자바 (프로그래밍 언어) -
자바FX
JavaFX는 자바 기반의 UI 구축 플랫폼으로, 다양한 플랫폼을 지원하며 풍부한 UI 기능들을 제공하고, Java 8부터 JDK에 포함되었다가 JDK 11부터 분리되어 관리된다.
2. 포맷
.properties 파일은 각 줄에 키-값 쌍 형태로 하나의 프로퍼티를 저장한다. 키와 값은 '=', ':', 또는 공백 문자로 구분할 수 있다.
.properties 파일에서 주석은 줄 맨 앞에 '#' 또는 '!' 문자를 붙여 표시하며, 해당 줄의 나머지 내용은 무시된다.
백슬래시('\')는 특수 문자를 이스케이프하거나 여러 줄에 걸쳐 프로퍼티 값을 정의할 때 사용한다. 줄 끝에 백슬래시를 추가하면 값이 다음 줄로 이어진다는 의미이다. 키 안에서 '=', ':', 공백과 같은 구분 문자를 사용하려면 백슬래시로 이스케이프해야 한다.
예시:
```properties
# 주석 예시
! 또 다른 주석 예시
website = http://en.wikipedia.org/
language = English
message = Welcome to \
Wikipedia!
key\ with\ spaces = This is the value
2.1. 유니코드 지원
Java 9 이전에는 .properties 파일의 인코딩이 ISO/IEC 8859-1(Latin-1)이었다. 따라서 ASCII 이외의 문자는 '\uHHHH' 형식의 유니코드 이스케이프 시퀀스를 사용하여 표현해야 했다. 예를 들어, 한국어 문자 '안'은 '\uC548'로 표현해야 했다.
Java 9부터는 UTF-8 인코딩이 기본적으로 지원되므로, 유니코드 문자를 직접 사용할 수 있다. 따라서 '안녕하세요'와 같은 한글 문자열을 유니코드 이스케이프 시퀀스 없이 직접 파일에 저장하고 읽을 수 있게 되었다.
3. 편집
.properties 파일은 윈도우의 메모장이나 리눅스 시스템의 Emacs, Vim 등 다양한 운영 체제에 설치된 텍스트 편집기를 사용하여 수동으로 편집할 수 있다.
.properties 파일 편집과 관련된 추가 기능을 가진 타사 도구도 존재하며, 이러한 도구는 다음과 같은 기능을 제공한다.
* 데이터 유효성 검사
* 새 키 생성
* 키 이름의 동기화
* 비-ASCII 기호를 자동 양방향 변환하여 비-라틴 문자 언어 지원
* 이클립스와의 통합
4. Java 외 사용 및 예외
아파치 플렉스는 .properties 파일을 사용하지만, UTF-8로 인코딩한다.
아파치 mod_jk의 uriworkermap.properties 형식에서 느낌표("!")는 줄의 첫 번째 비 공백 문자로 사용될 때 부정 연산자를 나타낸다.
펄 CPAN에는 .properties 파일과 인터페이스하는 Config::Properties가 포함되어 있다.
SAP는 자사의 프레임워크인 SAPUI5 및 오픈 소스 변형인 OpenUI5 내에서 현지화를 위해 .properties 파일을 사용한다.
Npm 패키지 관리자에는 Node.js (JavaScript/TypeScript)를 위한 다양한 옵션이 있다.
PHP에도 .properties 파일 처리를 위한 다양한 패키지 옵션이 있다.