比如我用sql语句查询返回后一个sqldatareader结果集,
如何将结果写入一个xml文件?
如何将结果写入一个xml文件?
解决方案 »
- 大家给介绍基本MVC的入门书籍吧(要中文的)
- this.ClientScript.RegisterStartupScript(GetType(), "msg", "alert(\"订单生成成功!\");",
- 跪求ASP.NET大神帮我渡过难关~万分感谢!
- jQuery的弹出窗体
- Request.QueryString找不到了
- Cookie问题
- 看到别人设计的可操作性,美观性都很好的WEB页,让我羡慕不已,我该如何学习,才能做出可操作性,美观性都很好的WEB页?
- 高分求c#水晶报表传参数的源码!!100分
- 怎么用ajax实现 进度条,解决有重谢
- 急!为什么不可以这样写?datalist如果不这样做,如何才能解决问题。
- LinkBotton问题,急急急,在线等
- hyperlink 实现下载
dt.WriteXml(Server.MapPath("~") + "/xkxx.xml");
以上写入网站根目录的xkxx.xml文件(若没有则自动创建)。
这种方法可行,如果非要返回sqldatareader。则需要自己构造XmlDocument或者XDocument,在调用Save保存到磁盘上。
XmlTextWriter textWriter = new XmlTextWriter("C:\\w3sky.xml", null);
textWriter.Formatting = Formatting.Indented; // 开始写过程,调用WriteStartDocument方法
textWriter.WriteStartDocument(); // 写入说明
textWriter.WriteComment("First Comment XmlTextWriter Sample Example");
textWriter.WriteComment("w3sky.xml in root dir");
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml;
//51aspx
public partial class AddXml : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{ }
protected void Button1_Click(object sender, EventArgs e)
{
//操作四:添加一个节点
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("XMLFile/XMLFile.xml"));
//创建一个新节点
XmlElement newElement = xmlDoc.CreateElement("poems");
//创建newElement下的节点
XmlElement elid = xmlDoc.CreateElement("id");
XmlElement elauthor = xmlDoc.CreateElement("author");
XmlElement eltitle = xmlDoc.CreateElement("title");
XmlElement elcontent = xmlDoc.CreateElement("content");
elid.InnerText = ReturnCount();
elauthor.InnerText = this.tbaddauthor.Text.Trim();
eltitle.InnerText = this.tbaddtitle.Text.Trim();
elcontent.InnerText = this.tbaddcontent.Text.Trim();
//将newElement下的节点加到newElement上
newElement.AppendChild(elid);
newElement.AppendChild(elauthor);
newElement.AppendChild(eltitle);
newElement.AppendChild(elcontent);
//将newElement加入到xml文件中(加在最后一条记录上)
xmlDoc.DocumentElement.AppendChild(newElement);
//如果要插到某条记录之后也可以用(加在第一条记录之后)
//xmlDoc.DocumentElement.InsertAfter(newElement,xmlDoc.DocumentElement.ChildNodes.Item(0));
//如果要插到某条记录之前也可以用(加在第一条记录之前)
//xmlDoc.DocumentElement.InsertBefore(newElement,xmlDoc.DocumentElement.ChildNodes.Item(0));
//存盘
xmlDoc.Save(Server.MapPath("XMLFile/XMLFile.xml"));
Response.Redirect("Default.aspx");
}
public string ReturnCount()
{
//返回最后的ID值并+1
string i = string.Empty;
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("XMLFile/XMLFile.xml"));
XmlNode xmlNode = xmlDoc.DocumentElement.LastChild;
if (xmlNode != null)
{
i = Convert.ToString(Convert.ToUInt32(xmlNode["id"].InnerText) + 1);
}
return i;
}
}