using System;
using System.Data;
using System.IO;
using System.Runtime.Serialization;
using System.Runtime.Serialization.Formatters.Binary;
using System.Text;
using System.Xml;
using System.Xml.Serialization;
namespace HamsicSoft.LibraryV4.StringHelper
{
public class SerializeUtility
{
public byte[] SerializeDataToByte(DataSet serializeData)
{
try
{
byte[] serializeResult = null;
serializeData.RemotingFormat = SerializationFormat.Binary;
MemoryStream ms = new MemoryStream();
IFormatter bf = new BinaryFormatter();
bf.Serialize(ms, serializeData);
serializeResult = ms.ToArray();
ms.Close();
return serializeResult;
}
catch (Exception exMsg)
{
throw exMsg;
}
}
public DataSet DeserializeDataFromByte(byte[] deserializeData)
{
try
{
DataSet myData = new DataSet();
MemoryStream ms = new MemoryStream(deserializeData);
IFormatter bf = new BinaryFormatter();
object obj = bf.Deserialize(ms);
myData = (DataSet)obj;
ms.Close();
return myData;
}
catch (Exception exMsg)
{
throw exMsg;
}
}
public string SerializeDataTableXml(DataTable serializeData)
{
serializeData.TableName = "MyTable";
try
{
StringBuilder BuildString = new StringBuilder();
XmlWriter WriterXml = XmlWriter.Create(BuildString);
XmlSerializer SerializerXml = new XmlSerializer(typeof(System.Data.DataTable));
SerializerXml.Serialize(WriterXml, serializeData);
WriterXml.Close();
return BuildString.ToString();
}
catch (Exception exMsg)
{
throw exMsg;
}
}
public DataTable DeserializeDataTableXml(string deserializeData)
{
try
{
System.IO.StringReader ReaderString = new System.IO.StringReader(deserializeData);
XmlReader ReaderXml = XmlReader.Create(ReaderString);
XmlSerializer SerializerXml = new XmlSerializer(typeof(System.Data.DataTable));
System.Data.DataTable SerializerDataTable = SerializerXml.Deserialize(ReaderXml) as DataTable;
SerializerDataTable.TableName = "MyTable";
return SerializerDataTable;
}
catch (Exception exMsg)
{
throw exMsg;
}
}
}
}
C# 数据序列化类
最新推荐文章于 2022-04-22 21:54:27 发布