XML的读写操作(生成XML & 解析XML)
时间:2019-09-26
本文章向大家介绍XML的读写操作(生成XML & 解析XML),主要包括XML的读写操作(生成XML & 解析XML)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
一、用Poco库
Poco库是下载、编译和使用:www.cnblogs.com/htj10/p/11380144.html
1. 生成XML
#include <Poco/AutoPtr.h> #include <Poco/DOM/Document.h> //for Poco::XML::Document #include <Poco/DOM/Element.h> //for Poco::XML::Element #include <Poco/DOM/Text.h> //for Poco::XML::Text #include <Poco/DOM/ProcessingInstruction.h> //for Poco::XML::ProcessingInstruction #include <Poco/DOM/Comment.h> //for Poco::XML::Comment #include <Poco/DOM/DOMWriter.h> //for Poco::XML::DOMWriter #include <Poco/XML/XMLWriter.h> //for Poco::XML::XMLWriter #include <sstream> int main(int argc, char** argv) { //Poco生成XML Poco::AutoPtr<Poco::XML::Document> pDoc = new Poco::XML::Document; Poco::AutoPtr<Poco::XML::ProcessingInstruction> pi = pDoc->createProcessingInstruction("xml","version='1.0' encoding='UTF-8'"); Poco::AutoPtr<Poco::XML::Comment> pComment = pDoc->createComment("The information of some Universities."); Poco::AutoPtr<Poco::XML::Element> pRoot = pDoc->createElement("University_info"); Poco::AutoPtr<Poco::XML::Element> pChild = pDoc->createElement("University"); pChild->setAttribute("name", "Harvard"); Poco::AutoPtr<Poco::XML::Element> pGrandchild1 = pDoc->createElement("school"); pGrandchild1->setAttribute("name", "Secient"); Poco::AutoPtr<Poco::XML::Element> pGrandchild2 = pDoc->createElement("school"); pGrandchild2->setAttribute("name", "Mathematics"); Poco::AutoPtr<Poco::XML::Element> pNumOfPeople = pDoc->createElement("people_counting"); Poco::AutoPtr<Poco::XML::Text> pText = pDoc->createTextNode("123"); pNumOfPeople->appendChild(pText); pDoc->appendChild(pi); pDoc->appendChild(pComment); pDoc->appendChild(pRoot); pRoot->appendChild(pChild); pChild->appendChild(pGrandchild1); pChild->appendChild(pGrandchild2); pGrandchild1->appendChild(pNumOfPeople); Poco::XML::DOMWriter writer; writer.setOptions(Poco::XML::XMLWriter::PRETTY_PRINT);// PRETTY_PRINT = 4 writer.writeNode("./example.xml", pDoc);//直接写进文件 //或者直接写进string std::stringstream sstr; writer.writeNode(sstr, pDoc); std::string s = sstr.str(); return 0; }
原文地址:https://www.cnblogs.com/htj10/p/11589357.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 《01-背包问题-点菜》
- 模拟赛 2018 Benelux Algorithm Programming Contest (BAPC 18)(部分题)
- vue动态生成表单组件vue-form-maker
- 对顶堆求区间k小(大)数
- 祖传快读快写模板
- 进阶版树状数组
- Julia 生产环境就绪了吗?我们跟项目维护者聊了聊
- 《2017年内蒙古自治区第十二届大学生程序设计-超级密码》
- 知识图谱入门(三)
- xmuC语言程序实践week 2 大作业
- redis学习(二十三)
- Vue 轻量级后台管理系统基础模板
- R语言对混合分布中的不可观测与可观测异质性因子分析
- JavaScript同步、异步及事件循环
- Node.js开发人员都应该知道的12个有用的包