/// <summary>

/// 将XML字符串转换成DATASET

/// </summary>

/// <param name="xmlStr"></param>

/// <returns></returns>

public static DataSet ConvertToDateSetByXmlString(string xmlStr)

{

if (xmlStr.Length > 0)

{

if (xmlStr.Contains("</NewDataSet><NewDataSet>"))

{

xmlStr = xmlStr.Replace("</NewDataSet><NewDataSet>", "");

}

DataSet ds = new DataSet();

StringReader StrStream = null;

XmlTextReader Xmlrdr = null;

try

{

//读取字符串中的信息                     StrStream = new StringReader(xmlStr);

//获取StrStream中的数据                     Xmlrdr = new XmlTextReader(StrStream);

//ds获取Xmlrdr中的数据                      ds.ReadXml(Xmlrdr);

return ds;

}

catch (Exception e)

{

throw e;

}

finally

{

//释放资源                     if (Xmlrdr != null)

{                         Xmlrdr.Close();

StrStream.Close();

}

}

}

else

{

return null;

}

}

/// <summary>

/// 将XML字符串转换成DATASET

/// </summary>

/// <param name="xmlStr"></param>

/// <returns></returns>

public static DataSet CTDateSetByXmlString(string xmlStr)

{

if (xmlStr.Length > 0)

{

if (xmlStr.Contains("</NewDataSet><NewDataSet>"))

{

xmlStr = xmlStr.Replace("</NewDataSet><NewDataSet>", "</NewDataSet>,<NewDataSet>");

}

string[] strXmlArr = xmlStr.Split(',');

DataSet dsTotle = new DataSet();

for (int i = 0; i < strXmlArr.Length; i++)

{

StringReader StrStream = null;

XmlTextReader Xmlrdr = null;

DataTable dt = null;

DataSet ds = new DataSet();

try

{

//读取字符串中的信息                         StrStream = new StringReader(strXmlArr[i].ToString());

//获取StrStream中的数据                         Xmlrdr = new XmlTextReader(StrStream);

//ds获取Xmlrdr中的数据                          ds.ReadXml(Xmlrdr);

dt = ds.Tables[0];

dt.TableName = dt.TableName + i;

}

catch (Exception e)

{

throw e;

}

finally

{

//释放资源                         if (Xmlrdr != null)

{

Xmlrdr.Close();

StrStream.Close();

}

}

dsTotle.Tables.Add(dt.Copy());

}

return dsTotle;

}

else

{

return null;

}

}

XML格式

string strDtXML = @"<NewDataSet>

           <Table>

           <列名a>201411</列名a>

           <列名b>XX</列名b>

           <列名c>北京</列名c>

           </Table>

           <Table>

           <列名a>201411</列名a>

           <列名b>FF</列名b>

           <列名c>黑龙江</列名c>

           </Table>

           </NewDataSet>";

DataSet dsSet = CTDateSetByXmlString(strDtXML);

.net 将xml转换成DateSet的更多相关文章

  1. Dom4j把xml转换成Map(固定格式)

    /** * 可解析list * * @param fileName * @return * @throws Exception */ @SuppressWarnings("unchecked ...

  2. Dom4j把xml转换成Map(非固定格式)

    将xml转换成Map,能够应对不用结构的xml,而不是只针对固定格式的xml.转换规则:1.主要是Map与List的互相嵌套2.同名称的节点会被装进List 示例: import java.util. ...

  3. 如何在ASP.NET中用C#将XML转换成JSON

    本文旨在介绍如果通过C#将获取到的XML文档转换成对应的JSON格式字符串,然后将其输出到页面前端,以供JavaScript代码解析使用.或许你可以直接利用JavaScript代码通过Ajax的方式来 ...

  4. 如何在ASP.NET中用C#将XML转换成JSON 【转】

      本文旨在介绍如果通过C#将获取到的XML文档转换成对应的JSON格式字符串,然后将其输出到页面前端,以供JavaScript代码解析使用.或许你可以直接利用JavaScript代码通过Ajax的方 ...

  5. C#将XML转换成JSON转换XML

    原文:C#将XML转换成JSON转换XML using System; using System.Collections.Generic; using System.Linq; using Syste ...

  6. C#将XML转换成JSON 使用 JavaScript 将 XML 转成 JSON

    如何在ASP.NET中用C#将XML转换成JSON [JavaScript]代码 // Changes XML to JSON function xmlToJson(xml) { // Create ...

  7. xml转换成map

    import java.io.IOException;import java.io.StringReader;import java.util.ArrayList;import java.util.H ...

  8. XML转换成数组方法

    <?php function xmlToArray2($xml) { // 将XML转为array $array_data = json_decode(json_encode(simplexml ...

  9. jQuery、JS读取xml文件里的内容(JS先通过document.implementation.createDocument方法将xml转换成document对象,jQuery将读取到的xml转成table)

    xml文件:test.xml <?xml version="1.0"?> <note> <to>George</to> <fr ...

随机推荐

  1. The use of function Merge (update、insert、delete)

    1.The use of function merge(update.insert.delete) Example: #1.Initialize the data create table #test ...

  2. 抽奖转盘(jqueryrotate.js)

    jqueryrotate.js抽奖转盘,使用方便,兼容各浏览器,效果如下图 <!DOCTYPE> <head> <meta http-equiv="Conten ...

  3. [Mugeda HTML5技术教程之7]添加动画

    前一节我们讲述了怎么在新建的作品中添加元素,元素加好以后我们还想让他们动起来,来实现比较炫的效果.这节我们将要讲述怎么给元素添加动画.Mugeda动画是通过时间轴和帧来实现的.通过在时间轴上创建图层和 ...

  4. 在PHP中开启CURL扩展,使其支持curl()函数

    在用PHP开发CMS的时候,要用到PHP的curl函数,默认状态下,这个函数需要开启CURL扩展,有主机使用权的,可通过PHP.ini文件开启本扩展,方法如下: 1.打开php.ini,定位到;ext ...

  5. jquery实现弹出即消失的提示层

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. destoon实现调用当前栏目分类及子分类和三级分类的方法

    调用当前栏目分类及子分类和三级分类是程序设计里常用的方法,本文就来详细讲述destoon实现调用当前栏目分类及子分类和三级分类的方法.具体操作如下: 在destoon中提供了如下的调用语句: 一级分类 ...

  7. shell下 使用心得

    打印时间的命令 date +'%F %k:%M:%d' crontab启动计划任务,注意两件事情: 1)crontab里启动的脚本,如果需要读取文件,需要使用绝对路径,或者在脚本里cd到目录所在的绝对 ...

  8. cf D. Sereja ans Anagrams

    http://codeforces.com/contest/368/problem/D #include <cstdio> #include <cstring> #includ ...

  9. 用keil怎么像makefile那样选择哪些文件进行编译?

    因为设备有多种不同的型号的硬件,所以就有不同的驱动,我想在编译的时候,像在linux下的makeile那样,自己写一个编译连接的东西,来控制我哪些文件进行编译链接,不知道在keil下有没有这样的方法. ...

  10. Qt信号和槽的个人总结

    1.connect connect(sender,SIGNAL(signal()),receiver,SLOT(slot())); 这里用到了两个宏:SIGNAL() 和SLOT():通过connec ...