代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
CSharp
】
XML、DataTable、DataSet、byte[]相互转换
作者:
kunkun0921
/ 发布于
2015/1/26
/
833
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data; using System.IO; using System.Xml; namespace ConsoleApp { /// <summary> /// XML、DataTable、DataSet、byte[]相互转换 /// </summary> public class PackMutualXmlData { /// <summary> /// 将Xml字符串转换成DataTable对象 第一个Table /// </summary> /// <param name="xmlStr">Xml字符串</param> /// <returns>DataTable对象</returns> public static DataTable ConvertXMLStringToDataTable(string xmlStr) { return ConvertXMLStringToDataSet(xmlStr).Tables[0]; } /// <summary> /// 将XML字符串转换成DATASET /// </summary> /// <param name="xmlStr"></param> /// <returns></returns> public static DataSet ConvertXMLStringToDataSet(string xmlStr) { if (xmlStr.Length > 0) { StringReader StrStream = null; XmlTextReader Xmlrdr = null; try { DataSet ds = new DataSet(); //读取字符串中的信息 StrStream = new StringReader(xmlStr); //获取StrStream中的数据 Xmlrdr = new XmlTextReader(StrStream); //ds获取Xmlrdr中的数据 //ds.ReadXmlSchema(Xmlrdr); ds.ReadXml(Xmlrdr); return ds; } catch (Exception e) { throw e; } finally { //释放资源 if (Xmlrdr != null) { Xmlrdr.Close(); StrStream.Close(); } } } else { return null; } } /// <summary> /// 将DataSet对象中指定的Table转换成XML字符串 当为-1时为第一个 /// </summary> /// <param name="ds">DataSet对象</param> /// <returns>XML字符串</returns> public static string ConvertDataSetIndexToXMLString(DataSet ds) { return ds.GetXml(); } /// <summary> /// 将DATATABLE转换成XML字符串 /// </summary> /// <param name="dt"></param> /// <returns></returns> public static string ConvertDataTableToXMLString(DataTable dt) { if (dt != null) { MemoryStream ms = null; XmlTextWriter XmlWt = null; try { ms = new MemoryStream(); //根据ms实例化XmlWt XmlWt = new XmlTextWriter(ms, Encoding.Unicode); //获取ds中的数据 dt.WriteXml(XmlWt); int count = (int)ms.Length; byte[] temp = new byte[count]; ms.Seek(0, SeekOrigin.Begin); ms.Read(temp, 0, count); //返回Unicode编码的文本 UnicodeEncoding ucode = new UnicodeEncoding(); string returnValue = ucode.GetString(temp).Trim(); return returnValue; } catch (System.Exception ex) { throw ex; } finally { //释放资源 if (XmlWt != null) { XmlWt.Close(); ms.Close(); ms.Dispose(); } } } else { return ""; } } /// <summary> /// 将字符串转换为二进制数组 /// </summary> /// <param name="xmlString">字符串</param> /// <param name="ed">编码格式</param> /// <returns></returns> public static byte[] ConvertStringToByteArray(string xmlString, Encoding ed) { return ed.GetBytes(xmlString); } /// <summary> /// 将二进制数组转换为字符串 /// </summary> /// <param name="bytes">二进制数组</param> /// <param name="ed">编码格式</param> /// <returns></returns> public static string ConvertByteArrayToString(byte[] bytes, Encoding ed) { return ed.GetString(bytes); } } }
试试其它关键字
XML
DataTable
DataSet
byte[]
同语言下
.
文件IO 操作类库
.
Check图片类型[JPEG(.jpg 、.jpeg),TIF,GIF,BMP,PNG,P
.
机器名和IP取得(IPV4 IPV6)
.
Tiff转换Bitmap
.
linqHelper
.
MadieHelper.cs
.
RegHelper.cs
.
如果关闭一个窗体后激活另一个窗体的事件或方法
.
创建日志通用类
.
串口辅助开发类
可能有用的
.
C#实现的html内容截取
.
List 切割成几份 工具类
.
SQL查询 多列合并成一行用逗号隔开
.
一行一行读取txt的内容
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
Java PDF转换成图片并输出给前台展示
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
kunkun0921
贡献的其它代码
(
40
)
.
linq 基本方法
.
Form窗体关闭原因
.
消除button按下出现的虚线
.
GUID转换为Int64
.
将窗体固定在显示器的左上角
.
获取进程或线程的相关信息
.
判断当前操作用户的管理角色
.
两个DataTable的加减乘除
.
视频API类 摄像头
.
集合、DataTable互转
Copyright © 2004 - 2024 dezai.cn. All Rights Reserved
站长博客
粤ICP备13059550号-3