当前位置: 首页 > news >正文

备案时的网站名称谷歌play

备案时的网站名称,谷歌play,介绍家乡网页html代码,一级 做爰免费网站新的一周又来啦#xff0c;这周我要分享的是使用C库解析XML文件和JSON文件#xff0c;在本篇博客中我主要讲解析XML文件的相关知识#xff0c;在下篇博客讲述有关解析JSON文件的相关。在解析XML文件时我使用的解析库是tinyXML2,编译平台是VS2019。希望看完本篇博客能对你有所…新的一周又来啦这周我要分享的是使用C库解析XML文件和JSON文件在本篇博客中我主要讲解析XML文件的相关知识在下篇博客讲述有关解析JSON文件的相关。在解析XML文件时我使用的解析库是tinyXML2,编译平台是VS2019。希望看完本篇博客能对你有所帮助。 XML文件简介 在学习解析XML文件之前我们应该先了解什么是XML文件。 XML文件是什么 XML 指可扩展标记语言eXtensible Markup Language设计用来传输和存储数据。 XML的设计宗旨是传输数据而不是显示数据。XML 标签没有被预定义。您需要自行定义标签。XML 被设计为具有自我描述性。 XML的用途 XML 把数据从 HTML 分离XML 简化数据共享XML 简化数据传输XML 简化平台变更XML 使您的数据更有用XML 用于创建新的互联网语言 XML文件语法 XML文件的语法规则很简单主要包括以下几点 XML 文档必须有根元素 XML 必须包含根元素它是所有其他元素的父元素如以下实例中 root 就是根元素 rootchildsubchild...../subchild/child /rootXML 声明 XML 声明文件的可选部分如果存在需要放在文档的第一行如下所示 ?xml version1.0 encodingutf-8?所有的 XML 元素都必须有一个关闭标签但声明可以没有关闭标签 pThis is a paragraph./pXML 标签对大小写敏感 XML 标签对大小写敏感。标签 与标签 是不同的。必须使用相同的大小写来编写打开标签和关闭标签 Message这是错误的/message message这是正确的/messageXML 必须正确嵌套 biThis text is bold and italic/i/bXML 属性值必须加引号 note date12/11/2007 toTove/to fromJani/from /notenote date12/11/2007 toTove/to fromJani/from /note在上面两个XML文档中第一个是错误的第二个是正确的。 您如需了解更多关于XML文件的相关信息可以到菜鸟教程学习相关知识。 在上面我介绍XML文件相关知识也都参考了该网站有关知识介绍的都很全。 TinyXML2库及配置 在了解完XML文件的相关知识后我们就可以开始进行XML文件的解析工作了。我们可以利用现成开源的库来帮助我们解析XML文件目前比较好用的库就是TinyXML2,只有两个文件分别是.h文件和.cpp文件。TinyXML2相关的库可以再网上很容易下到也可以到我的github下载相关的库文件网址如下TinyXML2文件库下载 这个库里面也有两个相关的例子。 把库下好之后就可以进行配置了TinyXML2配置相比于JSONCPP容易很多就只有两步 把库文件导入到项目工程中。如图所示 2.在代码头文件中引入头文件和命名空间 #include tinyxml2.h using namespace tinyxml2;创建XML文件 配置好库之后就可以依赖库创建XML文件了先贴代码 void createCodeXml() {XMLDocument xml;//插入声明XMLDeclaration* declaration xml.NewDeclaration();xml.InsertFirstChild(declaration);//插入根节点XMLElement* rootNode xml.NewElement(wang);xml.InsertEndChild(rootNode);//新建一个name节点XMLElement* root_1_name xml.NewElement(name);//新建name节点的文本wangqinghe//XMLText* text_1_name xml.NewText(wangqinghe);把文本与name节点链接起来//root_1_name-InsertFirstChild(text_1_name);//新建一个age节点XMLElement* root_1_age xml.NewElement(age);XMLText* text_1_age xml.NewText(18);root_1_age-SetAttribute(age, secret);root_1_age-InsertFirstChild(text_1_age);//创建name节点的子节点XMLElement* root_2_gender xml.NewElement(gender);XMLText* text_2_gender xml.NewText(man);root_2_gender-InsertFirstChild(text_2_gender);//将gender节点变为name节点的子节点root_1_name-InsertEndChild(root_2_gender);//链接name节点与根节点rootNode-InsertEndChild(root_1_name);rootNode-InsertEndChild(root_1_age);xml.SaveFile(wang.xml); }首先构造一个XML文档 XMLDocument xml;插入声明 //插入声明XMLDeclaration* declaration xml.NewDeclaration();xml.InsertFirstChild(declaration);插入声明后先插入一个根节点“wang” //插入根节点XMLElement* rootNode xml.NewElement(wang);xml.InsertEndChild(rootNode);新建一个name节点 XMLElement* root_1_name xml.NewElement(name);创建name节点的子节点“gender”文本内容为“man”,此时两者还没关系。 XMLElement* root_2_gender xml.NewElement(gender);XMLText* text_2_gender xml.NewText(man);root_2_gender-InsertFirstChild(text_2_gender);把节点“gender”设置为节点“name”的子节点 root_1_name-InsertEndChild(root_2_gender);新建一个age 节点文本内容为18 XMLElement* root_1_age xml.NewElement(age); XMLText* text_1_age xml.NewText(18); root_1_age-SetAttribute(age, secret); root_1_age-InsertFirstChild(text_1_age);把name节点和age节点设置为根节点的子节点到此所有的节点都连接完毕 rootNode-InsertEndChild(root_1_name); rootNode-InsertEndChild(root_1_age);最后保存文件文件名为wang.xml: xml.SaveFile(wang.xml);至此就已经创建好一个简单的xml文件了文件内容如下 ?xml version1.0 encodingUTF-8? wangnamegenderman/gender/nameage agesecret18/age /wang xml文件创建完毕。 解析XML文件 创建完XML文件之后我们就可以根据XML的文件格式来解析对应的XML文件。先放代码 void decodeXml() {//声明XMLDocument xml;//导入xml文件if (xml.LoadFile(wang.xml) ! XML_SUCCESS){return;}//判断头文件是否为空XMLElement* rootNode xml.RootElement();if (rootNode NULL){return;}//读取第一层信息XMLElement* root_1_name rootNode-FirstChildElement(name);//读取第二层信息XMLElement* root_2_gender root_1_name-FirstChildElement(gender);//信息输出string text_gender root_2_gender-GetText();cout gender: text_gender endl;//读取第一层信息XMLElement* root_1_age rootNode-FirstChildElement(age);const XMLAttribute* att_1_age root_1_age-FirstAttribute();cout att_1_age-Name() : att_1_age-Value() endl;string text_age root_1_age-GetText();cout age: text_age endl; }读取信息的代码比较简单通过注释应该能轻易理解读取的文件就是我们上面生成的XML文件。 总的代码如下 #include iostream #includetinyxml2.h using namespace std; using namespace tinyxml2; void example2() {XMLDocument doc;doc.LoadFile(test.xml);XMLElement* scene doc.RootElement();XMLElement* surface scene-FirstChildElement(node);while (surface){XMLElement* surfaceChild surface-FirstChildElement();const char* content;const XMLAttribute* attributeOfSurface surface-FirstAttribute();cout attributeOfSurface-Name() : attributeOfSurface-Value() endl;while (surfaceChild){content surfaceChild-GetText();surfaceChild surfaceChild-NextSiblingElement();cout content endl;}surface surface-NextSiblingElement();} } int main() {example2();return 0; }另一种解析XML文件的代码 首先是要解析的文件 ?xml version1.0 encodingUTF-8? scene nameDepthnode typecameraeye0 10 10/eyefront0 0 -1/frontrefUp0 1 0/refUpfov90/fov/nodenode typeSpherecenter0 10 -10/centerradius10/radius/nodenode typePlanedirection0 10 -10/directiondistance10/distance/node /scene对应代码 #include iostream #includetinyxml2.h using namespace std; using namespace tinyxml2; void example2() {XMLDocument doc;doc.LoadFile(test.xml);XMLElement* scene doc.RootElement();XMLElement* surface scene-FirstChildElement(node);while (surface){XMLElement* surfaceChild surface-FirstChildElement();const char* content;const XMLAttribute* attributeOfSurface surface-FirstAttribute();cout attributeOfSurface-Name() : attributeOfSurface-Value() endl;while (surfaceChild){content surfaceChild-GetText();surfaceChild surfaceChild-NextSiblingElement();cout content endl;}surface surface-NextSiblingElement();} } int main() {example2();return 0; }xml格式数据转为无空格和换行符字符串 XMLPrinter printer;xml.Accept(printer); // 将Print打印到Xmlprint类中 即保存在内存中const char *xmlString printer.CStr();return xmlString;代码下载 相关的代码下载
http://www.dnsts.com.cn/news/1574.html

相关文章:

  • 可以做推广的网站有哪些免费找客源软件
  • 哪些网站可以接任务做兼职关键词优化的建议
  • 18网站推广广东网站seo策划
  • 深圳做的好的电子行业招聘网站公司网站域名怎么注册
  • 做网站的一个黑点符号网络热词2023
  • 代理登录网站什么是网络营销平台
  • 设计网站printest本地推广最有效的方法
  • 无锡网站开发营销策略理论
  • 潜江网站建设整合营销名词解释
  • 好的做淘宝详情页的网站有哪些海口关键词优化报价
  • 一站式营销平台seo公司软件
  • 赤风设计网站怎么做网络营销
  • 亳州市建设局网站百度我的订单app
  • 广州网站设计营销公司谷歌关键词排名查询工具
  • 教育网站建设 培训网站建设怎么从网上找客户
  • ruby做网站网络营销工资一般多少
  • 做电气的什么招聘网站好大连百度seo
  • 网站建设需要服务器吗泉州网站建设优化
  • 燕赵邯郸网站建设做seo的公司
  • html5 css3酷炫网站品牌推广网络公司
  • 做网站的关键性技术有哪些网站建站在线制作
  • win7 发布asp网站济南今日头条新闻
  • 旅游行业做网站产品推广ppt
  • 贵港网站建设动态seo排名资源
  • 微网站建设今日冯站长之家
  • 物流网站建设方案权限管理营销课程培训哪个机构好
  • 苏州市建设局安监站网站长尾关键词是什么
  • 做网站维护需要什么证书外链群发软件
  • 深圳建网站多少钱百度地图在线查询
  • 横岗网站建设多少钱百度关键词指数查询