XML封装与解析
来源:互联网 发布:夏俊峰案网络舆论 编辑:程序博客网 时间:2024/06/06 10:52
1.XML封装
封装XML格式文件与封装字符串原理差不多,所以封装方法也是大同小异,需要注意的地方就是:1.XML文件中的引号要保留,封装时需要在引号前间反斜杠“\”;2.封装XML文件时,需要将对象的值进行类型转换,即由其他类型转换为CString类型。下面举一个实例,讲解XML封装方法:
首先是XML文件的格式如下:
<?xml version="1.0" encoding="gb2312" ?><subscribe>< devinfo statid="44030001" devtype="0" devid="00101" devip="192.168.101.1" devport="4660" devprotocol="100" devpassword="" ><type id="1" name=""/></devinfo></subscribe>
封装如上格式XML文件的C++代码:
CString CMapView::PackageXML(GpsInfo info){//封装成XMLCString strResult=_T("<?xml version=\"1.0\" encoding=\"gb2312\" ?>\n") ;CString strTemp;strTemp.Format("<subscribe>\n");strResult+=strTemp;strTemp.Format("<devinfo statid=\"");strResult+=strTemp;strResult+=info.lstrStatID.c_str();strTemp.Format("\" devtype=\"");strResult+=strTemp;strResult+=info.lstrNetType.c_str();strTemp.Format("\" devid=\" \" devip=\"");strResult+=strTemp;strResult+=info.lstrAddr.c_str();strTemp.Format("\" devport=\"%d\" devprotocol=\" \" devpassword=\" \">\n",info.nPort);strResult+=strTemp; strTemp.Format("<type id=\"6\""); strResult+=strTemp;//strResult+=info.lstrNetType.c_str();strTemp.Format(" name=\" \"/>\n");strResult+=strTemp;strTemp.Format("</devinfo>\n");strResult+=strTemp;strTemp.Format("</subscribe>\n");strResult+=strTemp;return strResult;}封装XML文件时,类型转换比较容易出错,下面表格进行了总结:
0 0
- XML封装与解析
- XML的封装与解析
- js xml封装解析
- 网络:XML 解析封装
- js解析xml封装类
- JSON封装与解析
- json封装 与 解析
- 消息封装与解析
- JAXBContext实战封装Xml和解析Xml
- XML与XML解析
- SAX写入xml 与 封装
- Android pull封装,直接解析xml
- SAX对xml的解析,javabean封装
- 解析xml几个方法的简单封装
- DOM4J操作XML(包含封装和解析)
- sax解析并封装XML到bean
- sax解析并封装XMl到bean
- JSON XML 数据的封装和解析
- (常用file类练习)递归打印文件目录
- BigDecimal运算
- placeholder效果适配IE8(1)
- TestNG执行的日志ITestListener与结果IReporter
- Aizu - 0019 Factorial
- XML封装与解析
- 检测磁盘占用情况
- iOS中比较当前日期与指定日期大小
- Android埋点技术分析调研
- jsoup获取ajax动态加载的页面
- 机器学习(周志华) 参考答案 第十章 降维与度量学习 10.1
- f3 RTC 例子
- 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- struts2 + jquery + json 进行ajax请求