c#解析XML到DATASET及dataset转为xml文件函数
原文:c#解析XML到DATASET及dataset转为xml文件函数

//将xml对象内容字符串转换为DataSet
public static DataSet ConvertXMLToDataSet(string xmlData)
{
StringReader stream = null;
XmlTextReader reader = null;
try
{
DataSet xmlDS = new DataSet();
stream = new StringReader(xmlData);
//从stream装载到XmlTextReader
reader = new XmlTextReader(stream);
xmlDS.ReadXml(reader);
return xmlDS;
}
catch (System.Exception ex)
{
throw ex;
}
finally
{
if (reader != null)
reader.Close();
}
}
//将xml文件转换为DataSet
public static DataSet ConvertXMLFileToDataSet(string xmlFile)
{
StringReader stream = null;
XmlTextReader reader = null;
try
{
XmlDocument xmld = new XmlDocument();
xmld.Load(xmlFile);
DataSet xmlDS = new DataSet();
stream = new StringReader(xmld.InnerXml);
//从stream装载到XmlTextReader
reader = new XmlTextReader(stream);
xmlDS.ReadXml(reader);
//xmlDS.ReadXml(xmlFile);
return xmlDS;
}
catch (System.Exception ex)
{
throw ex;
}
finally
{
if (reader != null)
reader.Close();
}
}
//将DataSet转换为xml对象字符串
public static string ConvertDataSetToXML(DataSet xmlDS)
{
MemoryStream stream = null;
XmlTextWriter writer = null;
try
{
stream = new MemoryStream();
//从stream装载到XmlTextReader
writer = new XmlTextWriter(stream, Encoding.Unicode);
//用WriteXml方法写入文件.
xmlDS.WriteXml(writer);
int count = (int)stream.Length;
byte[] arr = new byte[count];
stream.Seek(0, SeekOrigin.Begin);
stream.Read(arr, 0, count);
UnicodeEncoding utf = new UnicodeEncoding();
return utf.GetString(arr).Trim();
}
catch (System.Exception ex)
{
throw ex;
}
finally
{
if (writer != null)
writer.Close();
}
}
//将DataSet转换为xml文件
public static void ConvertDataSetToXMLFile(DataSet xmlDS, string xmlFile)
{
MemoryStream stream = null;
XmlTextWriter writer = null;
try
{
stream = new MemoryStream();
//从stream装载到XmlTextReader
writer = new XmlTextWriter(stream, Encoding.Unicode);
//用WriteXml方法写入文件.
xmlDS.WriteXml(writer);
int count = (int)stream.Length;
byte[] arr = new byte[count];
stream.Seek(0, SeekOrigin.Begin);
stream.Read(arr, 0, count);
//返回Unicode编码的文本
UnicodeEncoding utf = new UnicodeEncoding();
StreamWriter sw = new StreamWriter(xmlFile);
sw.WriteLine("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
sw.WriteLine(utf.GetString(arr).Trim());
sw.Close();
}
catch (System.Exception ex)
{
throw ex;
}
finally
{
if (writer != null)
writer.Close();
}
}

posted on 2019-06-15 09:28 NET未来之路 阅读(...) 评论(...) 编辑 收藏

转载于:https://www.cnblogs.com/lonelyxmas/p/11026503.html

c#解析XML到DATASET及dataset转为xml文件函数相关推荐

  1. ajax请求json和xml数据及对json和xml格式数据的解析

    ajax请求json和xml数据及对json和xml格式数据的解析 一.ajax请求json数据并解析 ajax的写法: json数据解析: 请求json经常出现的跨域报错: 二.ajax请求xml数 ...

  2. java 遍历xml子节点,Axiom解析XML,axiomxml,1、遍历XML全部节点,

    Axiom解析XML,axiomxml,1.遍历XML全部节点, 1.遍历XML全部节点,将节点放入Map返回2.遍历XML当前父节点下的所有子节点 [Java]代码import java.util. ...

  3. 【Groovy】自定义 Xml 生成器 BuilderSupport ( 创建 XmlNode 节点 | 管理 XmlNode 节点并将根节点转为 Xml 信息 | 完整代码示例 )

    文章目录 一.创建 XmlNode 节点 二.管理 XmlNode 节点并将根节点转为 Xml 信息 三.完整代码示例 1.自定义 Xml 生成器 MyBuilderSupport 2.Xml 节点封 ...

  4. 【Groovy】自定义 Xml 生成器 BuilderSupport ( 构造 Xml 节点类 | 封装节点名称、节点值、节点属性、子节点 | 将封装的节点数据转为 Xml 字符串 )

    文章目录 一.构造 Xml 节点类 1.封装节点名称.节点值.节点属性.子节点 2.将封装的节点数据转为 Xml 字符串 二.Xml 节点类完整代码 一.构造 Xml 节点类 生成 Xml 数据前 , ...

  5. sqlserver中将行数据转为Xml文件格式

    将sqlserver中的某张表中的行数据转为XML格式的文件的方法: 语法:select * from  表名   for xml path(xml文件中父节点的名称) 案例: //  在Movie数 ...

  6. python解析xml+得到pascal voc xml格式用于目标检测+美化xml

    1.python解析xml img_path='./data/001.tif'xml_path='./xml/001.xml'img=cv2.imread(img_path)# cv2.imshow( ...

  7. python实现tsinghua-tencent 100000数据集的json文件转为xml文件

    算法解决问题: 1,从json文件中抽取数据集中的小目标pne.p11.i5.w57四种交通标志数据集 2.小目标判断标注像素范围在[32,32] 3.转为对应的xml文件 4.标出选出的类别的个数 ...

  8. iOS中XML解析 (二) libxml2(实例:打印xml内容及存储到数组)

    关联:iOS中XML解析 (一) TBXML (实例:打印xml内容及存储到数组) 关于libxml库的基本使用,在http://xmlsoft.org/网上有文档. 准备工作: project=&g ...

  9. iOS中XML解析 (一) TBXML (实例:打印xml内容及存储到数组)

    关联:iOS中XML解析 (二) libxml2(实例:打印xml内容及存储到数组) 在时间上TBXML占优,libxml2支持了边下载边解析. 来源:http://www.codeios.com/f ...

  10. C++中XML的读写操作(生成XML 解析XML)

    一.用Poco库 Poco库是下载.编译和使用:www.cnblogs.com/htj10/p/11380144.html DOM(The Document Object Model)方式: 1. 生 ...

最新文章

  1. python 元组传参 *args 字典传参 **kwargs 的用法
  2. 【330天】跃迁之路——程序员高效学习方法论探索系列(实验阶段88-2018.01.01)...
  3. 第十六届智能车竞赛开源云台设计
  4. linux运行rmp文件,linux 里rpm包到底是干什么用的啊?
  5. GTK+ VS MFC
  6. element-ui介绍
  7. 刷机android8.1 错误7,[Android]错误: -source 1.7 中不支持 lambda 表达式 (请使用 -source 8 或更高版本以启用 lambda 表达式)...
  8. 会议交流 | 如何提升推荐系统的可解释性?——DataFunSummit2022知识图谱在线峰会...
  9. mybatis分页数据重复
  10. linux串口配置详解
  11. Spring -- spring 和 hibernate 整合
  12. 后端系统开发之技术方案写作
  13. 机器学习笔记 - 什么是图神经网络?
  14. 解决word或wps删除空白页后页面布局变乱
  15. 用简单的Python HTTP server来共享文件
  16. TIM2_CH1_ETR可以当做TIM2_CH1来用
  17. 高德地图API调用和数据解析
  18. PDF如何修改,PDF怎么删除其中一页
  19. 小程序时间段选择 选取某天的某时间段 基于vantweapp的时间段选择器 日期选择器
  20. 图解ARP协议(三)ARP防御篇-如何揪出内鬼并优雅的还手

热门文章

  1. 深入理解BGP的几个路由特性(试读连载六)
  2. Div被Select挡住的解决办法
  3. 另类DATAGRID数据编辑修改
  4. java cxf webservice 对象 c#客户端_使用CXF开发WebService客户端
  5. mysql writing to net_mysql 提示 Writing to net_MySQL
  6. 5.5使用Cucumber来测试
  7. [渝粤教育] 广东-国家-开放大学21秋期末考试大学英语210262k2
  8. 【渝粤教育】国家开放大学2018年秋季 1039t高级财务会计 参考试题
  9. [渝粤教育] 中国地质大学 电路理论(新) 复习题
  10. C++ Primer Plus 第三章编程练习