C 怎麼讀取ini中的多個相同的section和key值,然後儲存到乙個陣列裡?

時間 2022-01-06 21:10:44

1樓:

首先,ini格式要求Section不能同名,同一Section下的Key也不能同名。可以採用加數字的方式命名Section和Key,比如Case0、Case1、Case2……等等。

回到問題,使用下面的INI解析庫(C++實現)可以很容易解決:

markliPRC/portini: An INI file parser and serializer for C++ (github.com)

using

Document

=portini

::GenericDocument

,false

>;using

Section

=portini

::GenericSection

,false

>;using

Key=

portini

::GenericKey

>;std

::vector

map<

std::

string

,std

::string

>>res;

Document

doc;

doc.

ParseFromFile

("case.ini"

);// Loop Document

for(

auto

&sec

:doc)}

2樓:有頭腦的白月光

如果有相同的section和key,那麼用現有API讀取是不行的。需要自己實現以文字形式讀取檔案,然後用字串查詢,依次獲取每乙個section和key。字串查詢和分割的相關實現,可自行搜尋網上的例子。

3樓:MelodiCly

不太了解ini的語法,不過可以借鑑隔壁json的思路,對這些物件做stringify,作為字串存放,讀取的時候需要用parser處理一下

Android多個module引用相同的第三方庫,會重複打包麼?

KLam 可以會,也可以不會,看你實現。外掛程式化會遇到這個問題,建議看看ClassLoader載入類機制。就算同乙個類,用不同ClassLoader載入,也被認為是不同類 fengma chu 如果多個模組是通過 compile 座標 的方式來依賴庫的話,那麼只會編譯乙個版本,並且是最新版本,比如...

C 怎樣讀取檔案才有最快的速度?

Pluto Hades 充分利用作業系統的Map和Cache機制,不同系統不太一樣 順便說一下,不做任何引數改變,只使用預設方式,Windows上使用C庫的fread和C 的fstream要比單純的WinAPI Readfile慢得多。WinCE更加顯著。 龔佶敏 問題好大啊,可以寫一本書了,呵呵。...

requireJS多個頁面相同載入的問題?

貘吃饃香 瀉藥 又乙個 偶不會啥問啥 不會 reqiure.js 啊,咋辦 湊合忽悠忽悠吧 是這意思麼 common.js 裡 define function require,exports,module index.js 裡 define function require,exports,modu...