我们经常会用到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检测数据类型的方法你都掌握了几个?

    //1.typeof检测/*var obg = {};var ary = [];var reg = /^$/;var fn = function () {};var num = 1;var bool ...

  2. Couchbase 中的分布式储存

    Couchbase 是一个具有高性能.可扩展性和可 用性强的数据库引擎.它可以让开发人员通过 NoSQL 的键值存储(二进制或者JSON)或者使用 N1QL 的形式对数据进行操作(N1QL 是非常类似 ...

  3. 关于Storm Stream grouping

    在Storm中, 开发者可以为上游spout/bolt发射出的tuples指定下游bolt的哪个/哪些task(s)来处理该tuples.这种指定在storm中叫做对stream的分组,即stream ...

  4. 使用postfix在debian上配置邮件服务器

    如果debian中安装了exim4,先卸载exim4: apt-get remove exim4 安装postfix apt-get install postfix 安装完成后就可以测试下,PHP代码 ...

  5. MAVEN学习(初级)

    1. 项目管理利器 MAVEN 学习,参考慕课网 :http://www.imooc.com/search/?words=maven 2. 下载MEAVN 地址:http://maven.apache ...

  6. KoaHub平台基于Node.js开发的Koa的skip插件代码详情

    koahub-skip koahub skip middleware koahub skip Conditionally skip a middleware when a condition is m ...

  7. 一个很逗的东西——Jd

    这个嘛是本人专门为了NOI上面对拍程序写的对拍程序,已经经历了NOI2015的考验:更重要的是——纯Pascal的哦(HansBug:其实是我不会写.sh脚本TT,谁叫用惯了windows的我只会写b ...

  8. ST 单元测试之maven安装

    junit是用于单元测试的jar包,可以直接下载然后粘贴至lib目录,maven是专门的包管理工具,所以尝试安装maven. 安装maven之前需要先安装好java以及eclipse,在相应的官网下载 ...

  9. .NET客户端实现Redis中的管道(PipeLine)与事物(Transactions)

    序言 Redis中的管道(PipeLine)特性:简述一下就是,Redis如何从客户端一次发送多个命令,服务端到客户端如何一次性响应多个命令. Redis使用的是客户端-服务器模型和请求/响应协议的T ...

  10. Android开发之旅:环境搭建

    1.JDK安装 2.Eclipse安装 3.Android SDK安装 4.ADT安装 5.创建AVD