/// <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. channel c3 disabled, job failed on it will be run on another channel

    今天执行备份时,报错: allocated channel: c3 channel c3: sid=131 instance=orcl2 devtype=DISK   RMAN-03009: fail ...

  2. iOS 点击cell下拉

    iOS  点击cell下拉 代码如下: #import "ViewController.h" @interface ViewController ()<UITableView ...

  3. Xcode7国际化(根据系统语言切换App显示的语言) - 元宵节快乐!

    老规矩, 上gif 下面是配置的大概流程: 这个是要显示中文的.strings文件的内容和格式 这个是要显示英文的.strings文件的内容和格式 下面是应用名部分: 然后下面是代码部分: impor ...

  4. polya定理小结

    polya的精髓就在与对循环节的寻找,其中常遇到的问题就是项链染色类问题. 当项链旋转时有n种置换,循环节的个数分别是gcd(n, i); 当项链翻转时有n种置换,其中当项链珠子数位奇数时,循环节的个 ...

  5. 剖析c++(二) 内置类型的内存形式

    分布形式以及转换时候的截断(待编辑)

  6. mybatis常用语句

    <trim>标签中,prefix 前缀,suffix后缀, suffixOverrides语句最后如果有指定符号,则去除此符号, prefixOverrides语句最前面如果有指定符号,则 ...

  7. 近期Responsive web design项目经验分享-高分辨率图片处理篇

    在高分辨率的情况下  商品的图片难免会失真 怎样才能让商品的图片在高分辨率的情况下 效果不失真 提供用户更好的体验呢 我发现了一个解决方案 不知道是不是你想要的 先上图片对比下效果 左侧是使用后   ...

  8. QM项目开发文档整理

    QM项目开发文档整理 前言 在W公司工作4个多月,庆幸接触到的全是"硬"项目,真枪实干,技术.经验.能力都得到了很大提升. QM项目 此项目WEB前端学到的东西很多,对PHP项目的 ...

  9. 算法导论之python实现插入排序

    插入排序的花费时间 c*n2, c 是常数 伪代码 INSERTION-SORT(A) for i  to A.length key = A[j] //Insert A[j] into the sor ...

  10. Android MVP模式 简单易懂的介绍方式

    主要学习这位大神的博客:简而易懂 Android MVP模式 简单易懂的介绍方式 https://segmentfault.com/a/1190000003927200