asp.net下DataSet.WriteXml(String)与(Stream)的区别

时间:2021-05-28

DataSet.WriteXml(String)生成的Xml文件中包含XML声明,而DataSet.WriteXml(Stream)却不会写入Xml声明即<?xmlversion="1.0"standalone="yes"?>
详细情况:
在写博客园的数据备份程序时,本来想通过ds.WriteXml(Response.OutputStream)直接将Xml数据发送到客户端,可是这样在客户端得到的Xml文件中的所有中文全是乱码,乱码的Xml文件与正常的Xml文件区别就是少了一行Xml声明。然后,我改了代码,手动写入Xml声明,乱码问题就解决,代码如下:
XmlTextWriterwriter=newXmlTextWriter(Response.OutputStream,Response.ContentEncoding);
writer.Formatting=Formatting.Indented;
writer.Indentation=4;
writer.IndentChar='';
writer.WriteStartDocument();
ds.WriteXml(writer);
writer.Flush();
Response.End();
writer.Close();

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章