您的位置:首页 > 编程语言 > C#

在C#中如何创建写入XML文件示例

2011-05-05 14:45 357 查看
(1)创建XML文件:
protected void CreateXML()
{
string fileName = Server.MapPath(".//ErrorLog//ErrorLog.xml");
XmlTextWriter myWriter = new XmlTextWriter(fileName, Encoding.UTF8);
myWriter.Formatting = Formatting.Indented;
myWriter.WriteStartDocument(); //start Document
myWriter.WriteStartElement("ErrorDocument"); //start writer first Element
myWriter.WriteStartElement("ErrorLog");
myWriter.WriteStartElement("DataTime");
myWriter.WriteString("这个节点用来描述错误发生的时间!");
myWriter.WriteEndElement();
myWriter.WriteStartElement("ErrorMessage");
myWriter.WriteString("记录出错的信息!");
myWriter.WriteEndElement();
myWriter.WriteStartElement("Operator");
myWriter.WriteString("记录出错的操作用户!");
myWriter.WriteEndElement();
myWriter.WriteStartElement("Model");
myWriter.WriteString("记录发生错误的模块!");
myWriter.WriteEndElement();
myWriter.WriteEndElement();
myWriter.WriteEndElement(); //end writer first Element
myWriter.WriteEndDocument(); //end Document
myWriter.Flush();
myWriter.Close();
} 
 
(2)将错误日志写入刚创建的xml文件中
public void WriteErrorLog(string message,string operater,string module)
{
FileInfo fileinfo = new FileInfo(Server.MapPath(".//ErrorLog//ErrorLog.xml"));
if(!fileinfo.Exists) //日志文件不存在时创建文件
{
this.CreateXML();
}
string time = DateTime.Now.ToString();
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath(".//ErrorLog//ErrorLog.xml"));
XmlNode root=xmlDoc.SelectSingleNode("ErrorDocument");//查找<ErrorDocument>
XmlElement xe1=xmlDoc.CreateElement("ErrorLog");//创建一个<ErrorLog>节点

XmlElement xesub1=xmlDoc.CreateElement("DataTime");
xesub1.InnerText=time;//设置文本节点
xe1.AppendChild(xesub1);//添加到<ErrorLog>节点中
XmlElement xesub2=xmlDoc.CreateElement("ErrorMessage");
xesub2.InnerText=message;
xe1.AppendChild(xesub2);
XmlElement xesub3=xmlDoc.CreateElement("Operator");
xesub3.InnerText=operater;
xe1.AppendChild(xesub3);
XmlElement xesub4=xmlDoc.CreateElement("Model");
xesub4.InnerText=module;
xe1.AppendChild(xesub4);
root.AppendChild(xe1);
xmlDoc.Save(Server.MapPath(".//ErrorLog//ErrorLog.xml"));
}
private string xmlread()
{
XmlTextReader reader = new XmlTextReader(Server.MapPath("QuestionConfig.xml"));
string resault = "";
while (reader.Read())
{
if (reader.LocalName.Equals("站点标题"))
{
resault += reader.ReadString();
}
}
return resault;
}


当然别忘记导入已下两个命名空间:
using System.IO;
using System.Xml;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: