C++使用boost庫讀取ini配置文件的信息


  在啟動程序或者服務器時,都要讀取些配置文件,windows有自帶的WritePrivateProfileString可以將配置信息寫入ini文件;但是跨平台的話,還是用boost的比較好。

  如果配置文件名為test.ini,里面的配置信息如下:

  [command]

  host = 127.0.0.1

  port = 7000

  minsize  =  2

  maxsize  =  10

  timeout  =  10

  要將這些配置信息讀出來,程序的實現如下:

  #include <iostream>

  #include <string>

  #include <boost/property_tree/ptree.hpp>

  #include <boost/property_tree/ini_parser.hpp>

  void  read_configure_ini()

  {   

    boost::property_tree::ptree pt, commonCfg;
    boost::property_tree::ini_parser::read_ini("./test.ini", pt);  

    string  NodeIpStr;
    int port;
    int minsize;
    int maxsize;
    int timeout;

    commonCfg= pt.get_child("command");
    NodeIpStr = commonCfg.get<std::string>("host", "127.0.0.1");
    port = commonCfg.get<int>("port", 7000);
    minsize = commonCfg.get<int>("minsize", 2);
    maxsize = commonCfg.get<int>("maxsize", 10);
    timeout = commonCfg.get<int>("timeout", 10);

    cout << "the ip  is:" << redisNodeIpStr << endl;
    cout << "the port is:" << port << endl;
    cout << "the minsize is:" << minsize << endl;
    cout << "the maxsize is:" << maxsize << endl;
    cout << "the timeout is:" << timeout << endl;

  }

  int  main()

  {  

    read_configure_ini();

    return   0;

  }

  這樣的話就能將讀取到的ini文件的配置信息加載到定義的這些變量當中


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM