有沒有一種標準的方法來讀取Linux上使用C的INI文件這種配置?在Linux上使用C語言的INI文件
我在C.在基於Linux的手持設備和編寫代碼的工作
否則,我想了解任何替代品。
最後更新:
我已經探索了,甚至使用LibConfig。但足跡很高,我的使用過於簡單。所以,爲了減少足跡,我推出了自己的實施。實施過程不是非常通用,實際上現在已經相當耦合了。配置文件在啓動應用程序時被解析一次並設置爲一些全局變量。
有沒有一種標準的方法來讀取Linux上使用C的INI文件這種配置?在Linux上使用C語言的INI文件
我在C.在基於Linux的手持設備和編寫代碼的工作
否則,我想了解任何替代品。
最後更新:
我已經探索了,甚至使用LibConfig。但足跡很高,我的使用過於簡單。所以,爲了減少足跡,我推出了自己的實施。實施過程不是非常通用,實際上現在已經相當耦合了。配置文件在啓動應用程序時被解析一次並設置爲一些全局變量。
嘗試libconfig:
處理結構化配置文件,一個簡單的庫,像這樣的:test.cfg。這種文件格式比XML更緊湊,可讀性更強。與XML不同,它是類型感知的,所以不需要在應用程序代碼中進行字符串解析。
Libconfig非常緊湊 - 只是expat XML解析器庫大小的一小部分。這使其非常適合手持設備等內存受限的系統。
該庫包含C和C++語言的綁定。它適用於POSIX兼容UNIX和類UNIX系統(GNU/Linux,Mac OS X,Solaris,FreeBSD),Android和Windows(2000,XP和更高版本)...
看來libconfig是看着它的簡單和小尺寸的正確chice。非常感謝。 – Kangkan
不,沒有一個標準的方法。我很抱歉,但這可能是最準確的答案:)
雖然你可以看看這個list of Linux configuration file libraries。這可能會有所幫助。
但是最沒有幫助的一個...... – amarillion
有趣的是OP如何要求*標準*方法,得到7 *個不同的*建議(所有模式都改變了)以及一個說有*沒有標準*的答案被修改下來。 –
這在技術上是正確的答案。 –
如果你可以使用(優秀,在任何基於C-應用程序)glib ,它有一個key-value file parser那適用於.ini格式的文件。當然,你也可以訪問glib中的各種(非常好的)數據結構,「免費」。
有更新iniparser的叉子在ccan,原來的作者多年來一直沒能引起足夠的重視。免責聲明 - 我維護它。
此外,iniparser包含一個非常有用的字典。
我不建議在提示XML時提出完全不同的建議,但libexpat非常簡單,但確實使用XML。
我得出這個結論,因爲我的問題和你一樣,但是後來我意識到這個項目已經有libexpat鏈接了 - 我應該使用它。
肯定要求+1的方式去,而不是做你自己#74632! – DevSolar
@DevSolar,aw cmon,任何機會推出自己的解析器,而不是做更高效的事情是一個很好的! (臉頰上的舌頭) –
如果你想要一個選項列表,你應該編輯你的問題來說。現在,正確的答案是'不,沒有標準方式':) – gnud