2010-12-12 96 views
1

我想爲我的Perl腳本做一個簡單的配置文件,我原本打算使用Config::INIPlus,但我認爲它不會起作用。配置文件不需要是特別的。我只需要能夠讀取和寫入它。我想用一個模塊來實現這一點。什麼是製作一個簡單的Perl配置文件的最佳方式?

更新:

的原因,我不認爲配置:: INIPlus將工作對我來說聽起來很蠢,但我希望有配置文件保持值的特定順序。我一直遇到的問題是Config :: INIPlus模塊堅持擦除整個文件,然後以字母順序重新插入所有值,而不管它們與哪個主題相關,所以它弄亂了我想保留配置的順序文件排序。此外,它消除了我留給佔位者的空變量。

我使用註冊表作爲配置存儲進行了我的想法測試,它非常棒!問題是,儘管我試圖讓我的腳本儘可能地獨立於平臺,主要是Windows和Linux,而不是Mac,因爲我沒有它。

也許我只是需要重新考慮我對配置文件的看法,也許我會問一些不能完成的事情,直到我掌握更多的perl的更精細的點。

+1

如果您碰巧在某處放置了Perl最佳實踐一書,我相信它有關於配置文件加載和保存的整個部分。 – 2010-12-12 03:08:03

+0

你能解釋爲什麼你認爲Config :: INIPlus不適合你嗎?你是否遇到錯誤?你不喜歡它的配置格式嗎? – cjm 2010-12-12 05:03:32

回答

0

YAML? JSON? XML?有很多可能性,每個都有一個Perl模塊。還有簡單的舊文本,但如果您必須使用模塊,只需選擇一個標準。

+0

我明白了,感謝您的幫助,我將不得不做各種測試,看看哪一個最適合我。他們每個人都有優勢和劣勢,還是他們都差不多? – ianc1215 2010-12-12 03:10:07

+0

YAML比JSON簡單比XML簡單。所有同樣強大的IMO。 – 2010-12-12 03:21:39

+0

所以像那樣的人還在學習perl YAML的基礎知識可能是要走的路嗎? – ianc1215 2010-12-12 03:28:03

7

如果您正在尋找簡單的東西,我會嘗試Config::TinyConfig-INI

我不喜歡Config::Simple是因爲它試圖支持太多不同的配置格式。

YAML,JSON和XML都不是我稱之爲「簡單」配置文件,儘管如果您有更復雜的要求它們是合適的。如果可能的話,我會避免XML;在$WORK我寫了一個YAML-to-XML配置文件翻譯器,這樣我就可以在YAML中編寫我的配置文件,而不用手動編輯XML配置文件。

更新更新的問題:這當然可以寫,保留現有生產線的順序配置模塊,但我不知道任何現有的一個,做那個的。你可能不得不寫自己的,或僱人來寫它。

+0

呵呵我沒有意識到Config-INI,我已經用Config :: Tiny運行了,它已經搞亂了我用INI語法編寫的配置文件,並且放棄了它!我會研究Config-INI,它可能正是我需要的。 – ianc1215 2010-12-12 09:00:06

+2

@Solignis,Config-INI派生自Config :: Tiny,所以你可能有同樣的問題。你應該更新你的問題,更詳細地說明你已經嘗試了什麼以及出了什麼問題,所以我們可以給出更好的建議。如果問題在於評論被剝離,那麼您可能需要編寫一個新的配置模塊,因爲我不知道任何能夠準確評估的評論。 – cjm 2010-12-12 09:34:00

+0

+1對於一個簡單的人工編輯配置文件,只有*'YAML','JSON'或'XML'。 – 2010-12-12 11:46:40

相關問題