我知道有像Config::Inifiles
和Config::Simple
這樣的模塊可以用來解析ini風格的配置。如何使用Config :: General解析INI風格的配置文件?
但我想知道是否可以配置Config::General
來理解.ini文件的格式。
如果ini文件只有鍵值對,那麼Config::General
可以正常工作,但它無法理解註釋和節標題。
我試圖解析像一個ini文件:
; Config format
; [CONFIG_NAME]
; key1 = val1
; key2 = val2
; key3 = val3
[cat]
name = tom
likes = jerry
[mouse]
name = jerry
likes = cheese
但Config::General
輸出:
$VAR1 = {
'[mouse]' => '',
'name' => [
'tom',
'jerry'
],
'[cat]' => '',
'likes' => [
'jerry',
'cheese'
],
';' => [
'Config format',
'[CONFIG_NAME]',
'key1 = val1',
'key2 = val2',
'key3 = val3'
]
};
有沒有辦法告訴Config::General
正確解析呢?或者這是徒勞的練習,我應該切換到Config::Inifiles
?
什麼是「正確?」 [docs](http://search.cpan.org/perldoc/Config::General#COMMENTS)表示不支持這些類型的註釋,是的,Config :: IniFiles確實允許您指定一個備用的「commentchar 「 – obmib 2012-02-22 07:37:55
hi @obmib,我的意思是模塊應該根據我的規範解析配置文件。我瀏覽了文檔,看到有關配置結構的特定規則的實施,我們無法改變。我使用[Config :: Any](http://search.cpan.org/~bricas/Config-Any-0.23/lib/Config/Any.pm)來識別多種格式,所以現在我的問題已經解決了。 – Unos 2012-02-22 08:43:33
您可以將您的解決方案作爲下面的答案發布,以便我們可以從未答覆的列表中獲得此答案嗎?謝謝。 – 2012-02-22 15:10:13