最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用boost讀取XML文件詳細介紹

 更新時間:2016年11月14日 17:30:26   作者:松陽  
這篇文章主要介紹了使用boost讀取XML文件詳細介紹的相關資料,需要的朋友可以參考下

boost讀取XML文件

boost中提供了對配置文件讀取的支持,它就是:property_tree。

    basic_ptree 是property_tree的核心基礎。其接口像std::list??梢詧?zhí)行很多基本的元素操作,比如使用begin()、end()等。
    此外還加入了操作屬性樹的get()、get_child()、get_value()、data()等額外的操作。

    basic_ptree有兩個重要的內部定義self_type和value_type。self_type是basic_ptree模板實例化后自身的類型,它也是子節(jié)點的類型。value_type是節(jié)點的數(shù)據(jù)結構,它是一個std::pair,它含有屬性名(first)和節(jié)點自身(second)。

    通常不使用basic_ptree,而是使用預定義的typedef。ptree、wptree、iptree、wiptree。前綴i表示忽略大小寫,前綴w表示支持寬字符。

例如:

config.xml

<?xml version="1.0" encoding="utf-8"?> 
<con> 
 <id>1</id> 
 <name>fansy</name> 
 <urls> 
  <url>http://blog.csdn.net//fansongy</url> 
  <url>http://weibo.com//fansongy</url> 
 </urls> 
</con>  

我要讀取它的數(shù)據(jù):



#include <iostream> 
#include <boost/property_tree/ptree.hpp> 
#include <boost/property_tree/xml_parser.hpp> 
#include <boost/typeof/typeof.hpp>  
using namespace std; 
using namespace boost::property_tree; 
int main() 
{ 
  ptree pt; 
  read_xml("conf.xml",pt);   //讀入一個xml文件 
  cout<<"ID is "<<pt.get<int>("con.id")<<endl; //讀取節(jié)點中的信息 
  cout<<"Try Default"<<pt.get<int>("con.no_prop",100)<<endl; //如果取不到,則使用默認值 
  ptree child = pt.get_child("con");  //取一個子節(jié)點 
  cout<<"name is :"<<child.get<string>("name")<<endl;  //對子節(jié)點操作,其實跟上面的操作一樣 
   
  child = pt.get_child("con.urls"); 
  for(BOOST_AUTO(pos,child.begin());pos != child.end();++pos) //boost中的auto 
   { 
     cout<<"\t"+pos->second.data()<<endl; 
   } 
  pt.put("con.name","Sword");  //更改某個鍵值 
  pt.add("con.urls.url",http://www.baidu.com); //增加某個鍵值 
  write_xml("conf.xml",pt);  //寫入XML 
  getchar(); 
  return 0; 
} 



運行的顯示為: 
ID is 1 
Try Default100 
name is :fansy 
    http://blog.csdn.net//fansongy 
    http://weibo.com//fansongy 



config.xml為: 
<?xml version="1.0" encoding="utf-8"?> 
<con> 
 <id>1</id> 
 <name>Sword</name> 
<urls> 
   <url>http://blog.csdn.net//fansongy</url> 
   <url>http://weibo.com//fansongy</url> 
   <url>http://www.baidu.com</url> 
</urls> 
</con>  



感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關文章

  • C++ atoi()函數(shù)用法案例詳解

    C++ atoi()函數(shù)用法案例詳解

    這篇文章主要介紹了C++ atoi()函數(shù)用法案例詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內容,需要的朋友可以參考下
    2021-09-09
  • c++特殊構造函數(shù)詳解

    c++特殊構造函數(shù)詳解

    大家好,本篇文章主要講的是c++特殊構造函數(shù)詳解,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2022-01-01
  • 學習 C++能帶給我們什么

    學習 C++能帶給我們什么

    這篇文章主要介紹了學習 C++能帶給我們什么的相關總結,主要來自于前輩們,這里匯總給大家,需要的朋友可以參考下
    2016-03-03
  • C語言 解壓華為固件的實例代碼

    C語言 解壓華為固件的實例代碼

    這是解壓華為固件(update.app)的C語言。。其實這也是我翻115翻出來的。。。
    2013-08-08
  • 深入探討linux下進程的最大線程數(shù)、進程最大數(shù)、進程打開的文件數(shù)

    深入探討linux下進程的最大線程數(shù)、進程最大數(shù)、進程打開的文件數(shù)

    本篇文章是對linux下進程的最大線程數(shù)、進程最大數(shù)、進程打開的文件數(shù)進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • Conan中的C/C++的依賴管理

    Conan中的C/C++的依賴管理

    C/C++與Java、Python都有庫依賴問題,但是C/C++語言沒有自帶的包管理機制,也許是因為C/C++更多的應用于系統(tǒng)程序領域,Java、Python更多用于應用程序領域,對快速開發(fā)和部署要求更高,今天通過本文給大家介紹Conan中的C/C++的依賴管理,感興趣的朋友一起看看吧
    2023-01-01
  • C++字符串類的封裝你真的了解嗎

    C++字符串類的封裝你真的了解嗎

    這篇文章主要為大家詳細介紹了C++字符串類的封裝,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • c++11新增的便利算法實例分析

    c++11新增的便利算法實例分析

    這篇文章主要介紹了c++11新增的便利算法,主要有用于判斷、查找、數(shù)組、序列等的操作算法,非常具有實用價值,需要的朋友可以參考下
    2014-09-09
  • C++ 打開選擇文件夾對話框選擇目錄的操作

    C++ 打開選擇文件夾對話框選擇目錄的操作

    這篇文章主要介紹了C++ 打開選擇文件夾對話框選擇目錄的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • Qt QStandardItemModel用法小結

    Qt QStandardItemModel用法小結

    QStandardItemModel可用作標準Qt數(shù)據(jù)類型的存儲庫,本文主要介紹了Qt QStandardItemModel用法小結,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-12-12

最新評論

呈贡县| 汤原县| 灌阳县| 若尔盖县| 永康市| 岱山县| 汤阴县| 柳江县| 龙川县| 桃源县| 民县| 修水县| 荆州市| 西峡县| 神池县| 凉城县| 西贡区| 三都| 喜德县| 峡江县| 西丰县| 江达县| 江安县| 文登市| 丹阳市| 曲靖市| 增城市| 于都县| 澎湖县| 桑日县| 灵璧县| 东平县| 寿阳县| 紫阳县| 昌图县| 聂荣县| 仙居县| 渝北区| 博罗县| 久治县| 钟祥市|