asp.net下DataSet.WriteXml(String)與(Stream)的區(qū)別
更新時間:2007年04月13日 00:00:00 作者:
DataSet.WriteXml(String)生成的Xml文件中包含XML 聲明, 而DataSet.WriteXml(Stream)卻不會寫入Xml聲明即<?xml version="1.0" standalone="yes"?>
詳細情況:
在寫博客園的數據備份程序時,本來想通過ds.WriteXml(Response.OutputStream)直接將Xml數據發(fā)送到客戶端,可是這樣在客戶端得到的Xml文件中的所有中文全是亂碼,亂碼的Xml文件與正常的Xml文件區(qū)別就是少了一行Xml聲明。然后, 我改了代碼, 手動寫入Xml聲明, 亂碼問題就解決,代碼如下:
XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Response.ContentEncoding);
writer.Formatting = Formatting.Indented;
writer.Indentation = 4;
writer.IndentChar = ' ';
writer.WriteStartDocument();
ds.WriteXml(writer);
writer.Flush();
Response.End();
writer.Close();
詳細情況:
在寫博客園的數據備份程序時,本來想通過ds.WriteXml(Response.OutputStream)直接將Xml數據發(fā)送到客戶端,可是這樣在客戶端得到的Xml文件中的所有中文全是亂碼,亂碼的Xml文件與正常的Xml文件區(qū)別就是少了一行Xml聲明。然后, 我改了代碼, 手動寫入Xml聲明, 亂碼問題就解決,代碼如下:
XmlTextWriter writer = new XmlTextWriter(Response.OutputStream, Response.ContentEncoding);
writer.Formatting = Formatting.Indented;
writer.Indentation = 4;
writer.IndentChar = ' ';
writer.WriteStartDocument();
ds.WriteXml(writer);
writer.Flush();
Response.End();
writer.Close();
相關文章
asp.net HttpWebRequest自動識別網頁編碼
HttpWebRequest獲取網頁源代碼時自動識別網頁編碼,通過讀取頁面中的charset和讀取http頭中的編碼信息獲取頁面的編碼,基本可以正確獲取網頁編碼2008-09-09ASP.NET中GridView和Repeater重復數據如何合并
這篇文章主要介紹了ASP.NET中GridView和Repeater重復數據合并的方法,感興趣的小伙伴們可以參考一下2016-08-08把jQuery的each(callback)方法移植到c#中
jQuery中使用each(callback)方法可以很方便的遍歷集合,如2008-03-03visual studio 2017企業(yè)版本安裝(附序列號)
這篇文章主要介紹了visual studio 2017企業(yè)版本安裝,文末為大家分享了序列號,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-03-03ASP.NET Core 3框架揭秘之 異步線程無法使用IServiceProvider問題
這篇文章主要介紹了ASP.NET Core 3框架揭秘之異步線程無法使用IServiceProvider問題,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-12-12