我们经常会用到xml操作,如下介绍了js、sql、vb等对xml的操作。

JS创建xml对象

//创建对象
function getDataXML() {
    var objTds = $("TEXTAREA");
    var count = objTds.length;
    var jsonData;
    var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
    //创建根元素
    var root = xmlDoc.createElement("DtCostRecollectOverView");
    xmlDoc.appendChild(root);
    for (var i = 0; i < count; i++) {
        var chatRoom = xmlDoc.createElement(objTds[i].name);
        chatRoom.text = objTds[i].value;
        root.appendChild(chatRoom);
    }
    return xmlDoc.xml;
}

sql解析xml

DECLARE @params xml
DECLARE @customparams xml = null
-- 0、解析输入参数
DECLARE @filter nvarchar (max)
SET @filter = @params. value( '(/params/filter)[1]' , 'nvarchar(max)') -- 0.2、 (2=2)
DECLARE @customfilter nvarchar (max)
SET @customfilter = @params. value ( '(/params/customfilter)[1]', 'nvarchar(max)')
IF @customfilter = N''
SET @customfilter = N'2=2' -- 0.3、每页显示记录数
DECLARE @pagesize int
SET @pagesize = @params. value( '(/params/pagesize)[1]' , 'int') -- 0.4、页码
DECLARE @pagenum int
SET @pagenum = @params. value( '(/params/pagenum)[1]' , 'int') -- 0.5、排序字段
DECLARE @sortcol nvarchar (100)
SET @sortcol = @params. value( '(/params/sortcol)[1]' , 'nvarchar(100)')
IF @sortcol IS NULL OR @sortcol = ''
SET @sortcol = N' p_Provider.ProviderGUID' -- 注意:根据XML中的定义设置默认排序 !!!
ELSE
SET @sortcol = @sortcol + N' ,p_Provider.ProviderGUID' -- 注意:如果 XML中配置了实体主键,这里要拼接主键排序 -- 0.6、当前公司
DECLARE @buguid nvarchar (100)
SET @buguid = @customparams. value ( '(/params/BUGUID)[1]', 'nvarchar(100)') -- 注意:变量大小写与vb代码一致 !!! -- 0.7、当前产品服务 Code
DECLARE @productcode nvarchar (4000)
SET @productcode = @params. value ( '(/params/customfilter2)[1]', 'nvarchar(4000)')

VB中创建XML

这里是原生的做法,具体使用可做相应的封装:

Private Function GetUpdateRoomXml() As String
Dim xmlDOM As New XmlDocument
Dim xmlGACode As XmlElement = xmlDOM.CreateElement("SAVEAREA")
For Each dr As DataRow In dtUpdate_p_Room.Rows
Dim xmlRow As XmlElement = xmlDOM.CreateElement("ITEMS")
Dim xmlRoomGUID As XmlElement = xmlDOM.CreateElement("RoomGUID")
Dim xmlGABldCode As XmlElement = xmlDOM.CreateElement("GABldCode")
Dim xmlGAUnitCode As XmlElement = xmlDOM.CreateElement("GAUnitCode")
Dim xmlGARoomCode As XmlElement = xmlDOM.CreateElement("GARoomCode")
Dim xmlGACode0 As XmlElement = xmlDOM.CreateElement("GACode")
Dim xmlRoomCode As XmlElement = xmlDOM.CreateElement("RoomCode")
xmlRoomGUID.InnerText = dr.Item("RoomGUID").ToString()
xmlGABldCode.InnerText = dr.Item("GABldCode").ToString()
xmlGAUnitCode.InnerText = dr.Item("GAUnitCode").ToString()
xmlGARoomCode.InnerText = dr.Item("GARoomCode").ToString()
xmlGACode0.InnerText = dr.Item("GACode").ToString()
xmlRoomCode.InnerText = dr.Item("RoomCode").ToString()
xmlRow.AppendChild(xmlRoomGUID)
xmlRow.AppendChild(xmlGABldCode)
xmlRow.AppendChild(xmlGAUnitCode)
xmlRow.AppendChild(xmlGARoomCode)
xmlRow.AppendChild(xmlGACode0)
xmlRow.AppendChild(xmlRoomCode)
xmlGACode.AppendChild(xmlRow)
Next
Return xmlGACode.OuterXml
End Function

js创建xml对象的更多相关文章

  1. 【转】javascript中值传递,地址传递,引用传递的问题(使用js创建list对象时会用到)

    function initEditModal_SI(node) { if (node.siArray == undefined) { node.siArray = new Object(); } va ...

  2. 用js创建XMLHttpRequest对象池[转]

    //使用literal语法定义一个对象:XMLHttp var XMLHttp = { //定义第一个属性,该属性用于缓存XMLHttpRequest对象的数组 XMLHttpRequestPool: ...

  3. JS创建自定义对象

    普通对象的创建: 创建对象: 1.people = new Object(); people.name = "lin"; people.age = "26“; 2.创建字 ...

  4. js 创建XML

    // 创建xml数据 let doc = document.implementation.createDocument('', 'root', null); // 创建一个文档 let root =d ...

  5. 遍历文件 创建XML对象 方法 python解析XML文件 提取坐标计存入文件

    XML文件??? xml即可扩展标记语言,它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言. 里面的标签都是可以随心所欲的按照他的命名规则来定义的,文件名为roi.xm ...

  6. JS 创建自定义对象的方式方法

    一.概述 还记得刚开始做项目的时候,看到别人封装的js工具类百思不得其解,看来看去看不懂,深挖一下,其实就是自己没有耐下心去看,但是遇到问题不解决,总会遇到的,今天还是遇到了,就去找了找帖子,重新思考 ...

  7. js将xml对象,xml文件解析成xml dom对象,来对对象进行操作

    由于ie与其他的浏览器对于xml文件的解析方式不同,所以有不同的解析方式 1.1 IE解析xml文件的方式 var xmlDoc=new ActiveXObject("Microsoft.X ...

  8. js创建json对象

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. js 创建 JSON对象

    //定义变量 var Type = [{}]; Type.push({ label: "labelname", value: "value" });

随机推荐

  1. 关于使用微信js上传图片 笔记

    微信js初始化时需要签名,先获取签名(java代码): 1.获取jsapi_ticket,此数据自己保存,有效时长为7200秒 private String getJsticket(String to ...

  2. Maven转换成Eclipse项目后的依赖库更新问题

    使用Eclipse的Maven插件创建项目 如果你的Eclipse安装了Maven插件,创建Maven项目相当方便,创建后的项目如: 优势:项目引用的类库名称是"Maven Dependen ...

  3. SQL Sever数据库的基本操作和它的建立

    SQL数据库: 1.数据库概述 (1) 用自定义文件格式保存数据的劣势. (2) DBMS(DataBase Management System,数据库管理系统)和数据库,平时谈到"数据库& ...

  4. 1642: [Usaco2007 Nov]Milking Time 挤奶时间

    1642: [Usaco2007 Nov]Milking Time 挤奶时间 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 582  Solved: 33 ...

  5. css中设置div垂直水平居中的方法

    设置要水平垂直居中的div的position为absolute,left:50%;margin-left为负的这个元素宽度的一半,同理,top:50%;margin-top为负的这个元素的高度的一半. ...

  6. Backbone.js中的where和findWhere

    小编的公司框架用的MVC框架依旧是Backbone.js,老大说框架不重要,重要的是框架的编程思想.于是乎,小编从头开始学习Backbone.走马观花似的看了下API文档,撸起袖子就是干.但是碰到一个 ...

  7. 基于微软开发平台构建和使用私有NuGet托管库

    本篇blog包含使用TFS2017,VS2017等平台和工具搭建和使用NuGet库等基本过程,为团体提供更加自动化和高效的研发活动支持. 作为以产品线或者以专属业务为扩展的项目类型的软件研发团体,都会 ...

  8. iOS开发之清除缓存

    NSFileManager *mgr = [NSFileManager defaultManager]; NSString *cachePath = [NSSearchPathForDirectori ...

  9. iOS开发之Segue

    Storyboard上每一根用来界面跳转的线,都是一个UIStoryboardSegue对象(简称Segue). 每一个Segue对象,都有3个属性: (1)唯一标识 @property (nonat ...

  10. python应用部署--flask

    首先必须吐槽一下,python应用部署简直就是有毒...太麻烦了.关键还不能成功部署. 网上很多教程都是说要用nginx和uwsgi.来来回回试了无数次都不行.于是乎,在某一个瞬间,灵感以来,发现了一 ...