@@@@@@@@@@@@反序列化后附件不能使用-
MAIN:
string a = this.ToXmlString(ds.Tables[0]); //序列化
DataSet dss = this.ToDataSet(a); //反序列化
byte[] blob = System.Text.Encoding.UTF8.GetBytes(dss.Tables[0].Rows[0]["Affix"].ToString());
问题 出在这句,因为我图片在库中以IMAGE的形式保存,序列化可以,反序列化后出现问题了,图片显示不了,我该怎么改?
FileStream fs = new FileStream("c:\\b.jpeg", FileMode.OpenOrCreate, FileAccess.Write);
BinaryWriter bw = new BinaryWriter(fs);
bw.Write((byte[])blob);
序列化
public string ToXmlString(DataTable table)
{
StringBuilder content = new StringBuilder();
StringWriter writer = new StringWriter(content);
XmlTextWriter xmlwriter = new XmlTextWriter(writer);
DataSet ds = new DataSet();
ds.Tables.Add(table.Copy());
ds.WriteXml(xmlwriter);
return content.ToString();
}
反序列化
public DataSet ToDataSet(string xmlstream)
{
StringReader reader = new StringReader(xmlstream);
XmlTextReader xmlreader = new XmlTextReader(reader);
DataSet ds = new DataSet();
ds.ReadXml(xmlreader);
return ds;
}