.properties

.properties是一種主要在Java相關技術中用來存儲應用程序的可配置參數的文件文件擴展名。它們也可以存儲用於國際化和本地化的字符串,這種文件被稱為屬性資源包(Property Resource Bundles)。

Properties
副檔名
.properties
網路媒體型式text/plain
格式類型任何文本格式,包括ASCIIUTF

每個參數被存儲為一對字符串:一個存儲名稱參數(被稱為「鍵」),另一個存儲值。

格式

每個.properties 文件中的行通常存儲單個屬性。對於每一行可能有這麼幾種格式,包括键=值键 = 值键:值,以及键 值

.properties文件可以使用井號(#)或嘆號(!)作為一行中第一個非空白字符來表示它後面的所有文本都是一個注釋。反斜槓(\)用於轉義字符。下面提供一個屬性文件的示例。

# You are reading the ".properties" entry.
! The exclamation mark can also mark text as website
site = http://en.wikipedia.org/
message = Welcome to Wikipedia!

site是一個鍵,它對應的值是http://en.wikipedia.org/。而數字符號和感嘆號作為注釋標記文本,作為屬性的一部分時沒有什麼影響。因此,message鍵具有值Welcome to Wikipedia!而不是Welcome to Wikipedia。另請注意,在Wikipedia!前面的所有空白被完全排除。

.properties文件的編碼是ISO-8859-1,又稱為Latin-1。所有非Latin-1字符必須利用Unicode轉義字符錄入,例如\uHHHH中,HHHH是某個字符的Unicode字符集的十六進制的索引。這樣就可以使用.properties文件作為本地化的屬性資源包。非Latin-1的文本文件,可以通過使用隨JDK提供的native2ascii工具轉換為正確的.properties文件;或使用如po2prop[1]的第三方工具,管理雙語本地化格式轉義為.properties。

從Java 1.5開始,JDK支持XML格式屬性文件,其默認是UTF-8編碼的,可以用來替代Java的.properties文件。[2]

在Java外的應用

Adobe Flex亦使用.properties文件,不過其是用UTF-8編碼的。[3]

Apache mod_jk英語mod_jk的uriworkermap.properties文件中,感嘆號(「!」)作為每行的第一個非空白字符時,表示邏輯非操作符。[4]

參見

  • XMLYAML被用作一些更為複雜的配置格式

參考文獻

  1. ^ Translate Toolkitpo2prop頁面存檔備份,存於網際網路檔案館)可以將本地字符編碼的Gettext PO文件正確轉換成轉義過的ASCII,而無需 native2ascii。
  2. ^ Java XML Properties DTD. [2014-07-14]. (原始內容存檔於2012-07-17). 
  3. ^ Flex IResourceBundle reference. [2014-07-14]. (原始內容存檔於2014-08-29). 
  4. ^ Apache mod_jk uriworkermap.properties reference. [2014-11-12]. (原始內容存檔於2014-11-04). 

外部連結