将字符串转换成xml并取得对应的值
如数据库中有一个字段保存了xml格式的一串字符串:
<?xml version="1.0" encoding="utf-16"?>
<ArrayOfPassengerInfoForXml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<PassengerInfoForXml>
<Person>1</Person>
<Name>张三</Name>
<InsureNumber>2</InsureNumber>
</PassengerInfoForXml>
<PassengerInfoForXml>
<Person>1</Person>
<Name>李四</Name>
<InsureNumber>1</InsureNumber>
</PassengerInfoForXml>
</ArrayOfPassengerInfoForXml>
方法一:js
//字符串转化为xml
function toXmlDom(source) {
var xmlDoc = null;
if (window.ActiveXObject) {
var ARR_ACTIVEX = ["MSXML4.DOMDocument", "MSXML3.DOMDocument", "MSXML2.DOMDocument", "MSXML.DOMDocument", "Microsoft.XmlDom"];
var XmlDomflag = false;
for (var i = ; i < ARR_ACTIVEX.length && !XmlDomflag; i++) {
try {
var objXML = new ActiveXObject(ARR_ACTIVEX[i]);
xmlDoc = objXML;
XmlDomflag = true;
} catch (e) {
}
}
if (xmlDoc) {
xmlDoc.async = false;
xmlDoc.loadXML(source);
}
} else {
var parser = new DOMParser();
var xmlDoc = parser.parseFromString(source, "text/xml");
}
return xmlDoc;
}
function getXmlDom(source) {
var strXML=""; //strXML为上面的xml格式的字符串
var s = toXmlDom(strXML);
$(s).find("PassengerInfoForXml").each( //得到每一个签
function (id, item) {
//获取标签的内容
var Person= $(item).find("Person").eq().text();
var Name= $(item).find("Name").eq().text();
var InsureNumber= $(item).find("InsureNumber").eq().text();
alert(Name);
}
); }
方法二:asp.net 后台
1) 建一个类PassengerInfoForXml.cs,对应每个标签的字段
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; namespace WebApplication1
{
public class PassengerInfoForXml
{
public Int32 Person { get; set; }
public String Name { get; set; }
public Int32 InsureNumber { get; set; }
}
}
2) 获取每个标签的值
protected List<PassengerInfoForXml> passengerlist = null;
string strxml = ""; //上面的xml格式字符串 protected void Button1_Click(object sender, EventArgs e)
{
passengerlist = ConvertToObject(strxml, typeof(List<PassengerInfoForXml>)) as List<PassengerInfoForXml>;
for (int i = ; i < passengerlist.Count; i++)
{
var Person = passengerlist[i].Person;
var Name = passengerlist[i].Name;
var InsureNumber = passengerlist[i].InsureNumber;
Response.Write("<script>alert('"+Name+"')</script>");
}
}
//转换成对象PassengerInfoForXml
public static object ConvertToObject(string xml, Type objectType)
{
object obj2 = null;
if (string.IsNullOrEmpty(xml))
{
return obj2;
}
using (StringReader reader = new StringReader(xml))
{
XmlSerializer serializer = new XmlSerializer(objectType);
return serializer.Deserialize(reader);
}
}
将字符串转换成xml并取得对应的值的更多相关文章
- java基础60 JavaScript字符串转换成数字(网页知识)
1.字符串转换成数字 <!doctype html> <html> <head> <meta charset="utf-8"> &l ...
- 将Xml字符串转换成(DataTable || DataSet || XML)对象
今天用到一个功能:就是把从数据库读出来的内容转换成XML字符串流格式,并输出给一个功能函数.在写的过程,为方便以后的使用,我对这一功能进行分装.该类的具体格式如下:XmlConvert类命名空间:Ni ...
- C#中利用LINQ to XML与反射把任意类型的泛型集合转换成XML格式字符串
在工作中,如果需要跟XML打交道,难免会遇到需要把一个类型集合转换成XML格式的情况.之前的方法比较笨拙,需要给不同的类型,各自写一个转换的函数.但是后来接触反射后,就知道可以利用反射去读取一个类型的 ...
- android XMl 解析神奇xstream 五: 把复杂对象转换成 xml ,并写入SD卡中的xml文件
前言:对xstream不理解的请看: android XMl 解析神奇xstream 一: 解析android项目中 asset 文件夹 下的 aa.xml 文件 android XMl 解析神奇xs ...
- json 字符串转换成对象,对象转换成json字符串
json 字符串转换成对象,对象转换成json字符串 前端: 方法一: parseJSON方法: [注意jquery版本问题] var str = '{"name":&qu ...
- 第一百二十七节,JavaScript,JSON数据类型转换,数据转换成字符串,字符串转换成数据
第一百二十七节,JavaScript,JSON数据类型转换,数据转换成字符串,字符串转换成数据 学习要点: 1.JSON语法 2.解析和序列化 前两章我们探讨了XML的结构化数据,但开发人员还是觉得这 ...
- Java对象转换成xml对象和Java对象转换成JSON对象
1.把Java对象转换成JSON对象 apache提供的json-lib小工具,它可以方便的使用Java语言来创建JSON字符串.也可以把JavaBean转换成JSON字符串. json-lib的核心 ...
- Gson将字符串转换成JsonObject和JsonArray
以下均利用Gson来处理: 1.将bean转换成Json字符串: public static String beanToJSONString(Object bean) { return new Gso ...
- JS 实现"可读"字符串转换成"二进制的01"字符串
问题起源 看过一个漫画, 两位程序员在办公司交流, 可是说的语言却是010101类似的字符串.周围人很是惊异.计算机的世界,确实是由01组成的.今天突然想实现这个编码转换. 解决思路 学过C语言的都知 ...
随机推荐
- VMWare中的三种联网模式图解
网络基础及局域网配置 1.简单的局域网结构 2.VMWare中的三种联网模式 NAT模式 桥接模式 VMnet1
- report_timing_requirement
report_timing_requirement -ignored 会报告set_faults_paths,set_multi_path等
- Yarn架构基本概况(一)
1)引言 针对MRv1在扩展性.可靠性,资源利用率和多框架的支持上存在着明显的不足.进而诞生了下一代的MapReduce的计算框架MapReduce Version2,MRV1中有一个非常大的问题就是 ...
- Voronoi Diagram——维诺图
Voronoi图定义 任意两点p 和q 之间的欧氏距离,记作 dist(p, q) .就平面情况而言,我们有 dist(p, q) = (px-qx)2+ (py-qy)2 ...
- js页面载入特效如何实现
js页面载入特效如何实现 一.总结 一句话总结:可以加选择器(里面的字符串)作为参数,这样函数就可以针对不同选择器,就很棒了. 1.特效的原理是什么? 都是通过标签的位置和样式来实现特效的. 二.js ...
- arm Linux 如何自动检测并mount SD卡,以及如何得知已经mount
一.土八路做法: SD 卡一旦插入系统,内核会自动在/dev/下创建设备文件:sdcard. 但有时可能时用户在拨出卡前并没有umount的话,第二次插卡进去后系统创建的就不是sdcard设备文件了, ...
- pstack.sh 改进版
pstack.sh 改进版本 #!/bin/bash if (( $# < 1 )) ; then echo "usage: `basename $0` pid" 1> ...
- Perl按行分割文件
Perl按行分割文件 将一个文件按照行数,均等的分割成多个小文件,例如,一个550行的文件,分割为每个文件有100行,则将分割为6个小文件 运行结果 参考代码(split_file.pl) #!/us ...
- [Vue] Create Vue.js Layout and Navigation with Nuxt.js
Nuxt.js enables you to easily create layout and navigation by replacing the default App.vue template ...
- wPaint在线绘图插件
wPaint在线绘图插件 一.总结 一句话总结: 1.搜画图插件的时候关键词应该搜什么? jquery画图插件 js画图插件 jquery绘图插件 这些 二.在线绘图插件--wPaint 的实际应用 ...