//添加xml節點
private void AddXml(string image, string title)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("../flash/dati.xml"));
XmlElement xe1 = xmlDoc.CreateElement("thumb");//創建一個<thumb>節點
xe1.SetAttribute("displayNum", "6");//設置該節點displayNum屬性
xe1.SetAttribute("separation", "5");//設置該節點separation屬性
xesub1.InnerText = image;//設置文本節點
xe1.AppendChild(xesub1);//添加到thumb節點中
XmlElement xesub2 = xmlDoc.CreateElement("description");
xesub2.InnerText = title;
xe1.AppendChild(xesub2);
xmlDoc.Save(Server.MapPath("../flash/dati.xml"));
}
{
//初始化XML文檔操作類
XmlDocument myXml = new XmlDocument();
//加載指定的XML文件
myXml.Load(FileName);
//添加元素-姓名
XmlElement ele0 = myXml.CreateElement("name");
XmlText Text0 = myXml.CreateTextNode(name);
//添加元素-年齡
XmlElement ele1 = myXml.CreateElement("age");
XmlText Text1 = myXml.CreateTextNode(age);
//添加元素-性別
XmlElement ele2 = myXml.CreateElement("sex");
XmlText Text2 = myXml.CreateTextNode(sex);
//添加元素的節點---studentRecord
XmlNode newElem = myXml.CreateNode("element", "studentRecord", "");
//在節點中添加元素
newElem.AppendChild(ele0);
newElem.LastChild.AppendChild(Text0);
newElem.AppendChild(ele1);
newElem.LastChild.AppendChild(Text1);
newElem.AppendChild(ele2);
newElem.LastChild.AppendChild(Text2);
//將節點添加到文檔中
XmlElement root = myXml.DocumentElement;
root.AppendChild(newElem);
//保存所有的修改
myXml.Save(FileName);
}
private void DelXml(string image)
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load(Server.MapPath("../flash/dati.xml"));
XmlNodeList xnl = xmlDoc.SelectSingleNode("images").ChildNodes;
foreach (XmlNode xn in xnl)
{
XmlElement xe = (XmlElement)xn;
if (xe.InnerText.IndexOf(image,0) >= 0)
{
xn.ParentNode.RemoveChild(xn);
// xn.RemoveAll();
}
}
xmlDoc.Save(Server.MapPath("../flash/dati.xml"));
}
{
XmlElement xe=(XmlElement)xn;//將子節點類型轉換為XmlElement類型
if(xe.GetAttribute("genre")=="")// 判讀條件
{
xe.SetAttribute("genre",newStr);//則修改該屬性為newstr
XmlNodeList nls=xe.ChildNodes;//繼續獲取xe子節點的所有子節點
foreach(XmlNode xn1 in nls)//遍歷
{
XmlElement xe2=(XmlElement)xn1;//轉換類型
if(xe2.Name=="author")//如果找到 //判讀條件
{
xe2.InnerText=newText;//則修改
break;//找到退出來就可以了
}
}
break;
}
private void WriteXML()
{
XmlTextWriter xtw = new XmlTextWriter(@"MessageBook\Data\MessageBook1.xml"), null);
xtw.Formatting = Formatting.Indented;
xtw.WriteStartDocument();
//xtw.WriteComment();
xtw.WriteStartElement("Item");
xtw.WriteElementString("UserName", "Tom");
xtw.WriteEndElement();
xtw.WriteEndDocument();
xtw.Close();
}
//讀XML
private void ReadXML()
{
// 創建一個XmlTextReader類的對象並調用Read方法來讀取XML文件
XmlTextReader textReader = new XmlTextReader("C:\\books.xml");
textReader.Read();
// 節點非空則執行循環體
while ( textReader.Read() )
{
// 讀取第一個元素
textReader.MoveToElement();
Console.WriteLine("XmlTextReader Properties Test");
Console.WriteLine("===================");
// 讀取該元素的屬性並顯示在控制台中
Console.WriteLine("Name:" + textReader.Name);
Console.WriteLine("Base URI:" + textReader.BaseURI);
Console.WriteLine("Local Name:" + textReader.LocalName);
Console.WriteLine("Attribute Count:" + textReader.AttributeCount.ToString());
Console.WriteLine("Depth:" + textReader.Depth.ToString());
Console.WriteLine("Line Number:" + textReader.LineNumber.ToString());
Console.WriteLine("Node Type:" + textReader.NodeType.ToString());
Console.WriteLine("Attribute Count:" + textReader.Value.ToString());
}