9

以下のような構成で; 個々のセクションを処理する方法はありますか。

以下の個々の「サーバー」セクションを信頼できる方法で検証する方法を探しています。

[basic]
number_of_servers=3

[server]
ip=10.20.30.40
password=sdfslkhf    

[server]
ip=10.20.30.41
password=sdfslkhf

[server]
ip=10.20.30.42
password=sdfslkhf

[server]
password=sdfslkhf

[server]
ip=10.20.30.42
4

2 に答える 2

13

を使用boost::program_optionsして INI ファイルを解析する場合、オプション名の前にセクション名を囲む必要があります。

言い換えれば、セクションはオプション「識別子」の一部ですが、特定の変数がどのセクションにserver.ip属しているか (したがって、どのセクションが関連付けられているかserver.password) を識別する方法はないと思います。

このタスクには、 Boost.PropertyTree (INI ファイルの解析もサポート) を検討する必要があると思います。

于 2010-12-22T12:43:06.000 に答える
2

ここから:

オプション名はセクション名に関連しているため、次の構成ファイルの部分は次のとおりです。

  [gui.accessibility]
  visual_bell=yes

と同等です

  gui.accessibility.visual_bell=yes

しかし、現在、同じ名前のセクションを区別する方法はありません。

アップデート:

Qt の QSettings は通常、配列の値 (セクション?) を "/n" で後置することでこれを解決します。したがって、次を使用できます。

[server/0]
...
[server/1]
...
[server/2]
...
于 2010-12-22T12:46:36.080 に答える