<p><b>.properties</b>是一種主要在Java相關技術中用來儲存應用程式的可組態參數的檔案的副檔名。它們也可以儲存用於國際化和在地化的字串，這種檔案被稱為屬性資源包（Property Resource Bundles）。
</p><p>每個參數被儲存為一對字串：一個儲存名稱參數（被稱為「鍵」），另一個儲存值。
</p>


<h2><span id=".E6.A0.BC.E5.BC.8F"></span><span id="格式">格式</span></h2>
<p>每個.properties 檔案中的行通常儲存單個屬性。對於每一行可能有這麼幾種格式，包括<code>键=值</code>，<code>键 = 值</code>，<code>键:值</code>，以及<code>键 值</code>。
</p><p>.properties檔案可以使用井號（#）或嘆號（!）作為一行中第一個非空白字元來表示它後面的所有文字都是一個注釋。反斜槓（\）用於跳脫字元。下面提供一個屬性檔案的範例。
</p>

<p>site是一個鍵，它對應的值是<tt>http://en.wikipedia.org/</tt>。而數字符號和感嘆號作為注釋標記文字，作為屬性的一部分時沒有什麼影響。因此，<tt>message</tt>鍵具有值<tt>Welcome to Wikipedia!</tt>而不是<tt>Welcome to Wikipedia</tt>。另請注意，在<tt>Wikipedia!</tt>前面的所有空白被完全排除。
</p><p>.properties檔案的編碼是ISO-8859-1，又稱為Latin-1。所有非Latin-1字元必須利用Unicode跳脫字元錄入，例如\uHHHH中，HHHH是某個字元的Unicode字元集的十六進位的索引。這樣就可以使用.properties檔案作為在地化的屬性資源包。非Latin-1的文字檔案，可以通過使用隨JDK提供的native2ascii工具轉換為正確的.properties檔案；或使用如po2prop的第三方工具，管理雙語在地化格式跳脫為.properties。
</p><p>從Java 1.5開始，JDK支援XML格式屬性檔案，其預設是UTF-8編碼的，可以用來替代Java的.properties檔案。</p>
<h2><span id=".E5.9C.A8Java.E5.A4.96.E7.9A.84.E5.BA.94.E7.94.A8"></span><span id="在Java外的应用">在Java外的應用</span></h2>
<p>Adobe Flex亦使用.properties檔案，不過其是用UTF-8編碼的。</p><p>在<span data-orig-title="mod_jk" data-lang-code="en" data-lang-name="英語" data-foreign-title="mod_jk"><span>Apache mod_jk</span></span>的uriworkermap.properties檔案中，感嘆號（「!」）作為每行的第一個非空白字元時，表示邏輯非運算子。</p>
<h2><span id=".E5.8F.82.E8.A7.81"></span><span id="参见">參見</span></h2>
<ul><li>XML和YAML被用作一些更為複雜的組態格式</li></ul><h2><span id=".E5.8F.82.E8.80.83.E6.96.87.E7.8C.AE"></span><span id="参考文献">參考文獻</span></h2>
<h2><span id=".E5.A4.96.E9.83.A8.E9.93.BE.E6.8E.A5"></span><span id="外部链接">外部連結</span></h2>
<ul><li><code>java.util.Properties.load(java.io.Reader)</code>——給出了良好的Java屬性檔案的精確語意。</li>
<li><code>java.util.PropertyResourceBundle</code>——介紹了屬性資源包。</li>
<li><code>java.util.Properties</code>——Java下用簡單的XML格式載入和儲存屬性。</li>
<li>MultiProperties（頁面存檔備份，存於網際網路檔案館）——這是一個Eclipse外掛程式，用來編輯多個內容相似的基於鍵-值檔案。這種檔案格式可以作為屬性檔案。</li>
<li>Bracket Properties（頁面存檔備份，存於網際網路檔案館）——它「重新定義」了「屬性」的概念，並能使無所不在的.properties檔案保持完備。</li>
<li>Java Properties Editor (Application + Eclipse plugin)（頁面存檔備份，存於網際網路檔案館）——在整個專案中檢視和編輯屬性檔案的實用工具。</li>
<li>DOKSoft Properties Editor Eclipse plugin（頁面存檔備份，存於網際網路檔案館） - i18n工具，安裝到Eclipse IDE中。</li>
<li>Message Editor（頁面存檔備份，存於網際網路檔案館）——它管理Java應用程式的i18n。</li>
<li>JLokalize（頁面存檔備份，存於網際網路檔案館）——開源的Java屬性編輯器，具有翻譯和拼寫檢查功能。</li></ul><!-- 
NewPP limit report
Parsed by mw1396
Cached time: 20230505225900
Cache expiry: 1814400
Reduced expiry: false
Complications: [show‐toc]
CPU time usage: 0.229 seconds
Real time usage: 0.363 seconds
Preprocessor visited node count: 633/1000000
Post‐expand include size: 202964/2097152 bytes
Template argument size: 944/2097152 bytes
Highest expansion depth: 7/100
Expensive parser function count: 3/500
Unstrip recursion depth: 0/20
Unstrip post‐expand size: 4771/5000000 bytes
Lua time usage: 0.081/10.000 seconds
Lua memory usage: 6793131/52428800 bytes
Number of Wikibase entities loaded: 0/400
--><!--
Transclusion expansion time report (%,ms,calls,template)
100.00%  252.634      1 -total
 24.18%   61.097      1 Template:NoteTA
 16.05%   40.556      3 Template:Cite_web
 10.19%   25.738      3 Template:Javadoc:SE
  9.14%   23.101      3 Template:Javadoc:SE/Home_URL
  7.62%   19.245      1 Template:Infobox_file_format
  6.61%   16.703      1 Template:Infobox
  6.18%   15.613      1 Template:Link-en
  0.84%    2.112      7 Template:Wayback
-->
**.properties** 是一種主要在 Java 相關技術中用來儲存應用程式的可組態參數的檔案的副檔名。它們也可以儲存用於國際化和在地化的字串，這種檔案被稱為屬性資源包（Property Resource Bundles）。

每個參數被儲存為一對字串：一個儲存名稱參數（被稱為「鍵」），另一個儲存值。

## 格式

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

.properties 檔案可以使用井號（#）或嘆號（!）作為一行中第一個非空白字元來表示它後面的所有文字都是一個注釋。反斜槓（\）用於跳脫字元。下面提供一個屬性檔案的範例。

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 的第三方工具，管理雙語在地化格式跳脫為.properties。

從 Java 1.5 開始，JDK 支援 XML 格式屬性檔案，其預設是 UTF-8 編碼的，可以用來替代 Java 的.properties 檔案。

## 在 Java 外的應用

Adobe Flex 亦使用.properties 檔案，不過其是用 UTF-8 編碼的。

在 Apache mod\_jk 的 uriworkermap.properties 檔案中，感嘆號（「!」）作為每行的第一個非空白字元時，表示邏輯非運算子。

## 參見

* XML 和 YAML 被用作一些更為複雜的組態格式

## 參考文獻

## 外部連結

* `java.util.Properties.load(java.io.Reader)`—— 給出了良好的 Java 屬性檔案的精確語意。
* `java.util.PropertyResourceBundle`—— 介紹了屬性資源包。
* `java.util.Properties`——Java 下用簡單的 XML 格式載入和儲存屬性。
* MultiProperties（頁面存檔備份，存於網際網路檔案館）—— 這是一個 Eclipse 外掛程式，用來編輯多個內容相似的基於鍵 - 值檔案。這種檔案格式可以作為屬性檔案。
* Bracket Properties（頁面存檔備份，存於網際網路檔案館）—— 它「重新定義」了「屬性」的概念，並能使無所不在的.properties 檔案保持完備。
* Java Properties Editor (Application + Eclipse plugin)（頁面存檔備份，存於網際網路檔案館）—— 在整個專案中檢視和編輯屬性檔案的實用工具。
* DOKSoft Properties Editor Eclipse plugin（頁面存檔備份，存於網際網路檔案館） - i18n 工具，安裝到 Eclipse IDE 中。
* Message Editor（頁面存檔備份，存於網際網路檔案館）—— 它管理 Java 應用程式的 i18n。
* JLokalize（頁面存檔備份，存於網際網路檔案館）—— 開源的 Java 屬性編輯器，具有翻譯和拼寫檢查功能。
.properties