Asp.net XML文檔進行添加刪改操作的實例代碼
更新時間:2009年12月15日 20:39:15 作者:
Asp.net 對一下XML文檔進行添加刪改的實例
XML文件名為bcastr.xml
結(jié)構(gòu)如下:
<?xml version="1.0" encoding="utf-8"?>
<bcaster>
<item id="79" item_url="PicNews/Img/u=404630538,2075277077" link="HTML/050/AI_20081017_50_53_79.html" itemtitle="111111111111111111" />
<item id="78" item_url="PicNews/Img/Index_04_01_06.jpg" link="HTML/050/AI_20081017_50_53_78.html" itemtitle="zengjia" />
<item id="77" item_url="PicNews/Img/bsxwf.jpg" link="HTML/050/AI_20081017_50_53_77.html" itemtitle="中國藥科大學研究生部" />
<item id="76" item_url="PicNews/Img/江寧大門.jpg" link="HTML/050/AI_20081017_50_53_76.html" itemtitle="研究生部圖片新聞" />
<item id="75" item_url="PicNews/Img/中國藥科大學校標(完美2).jpg" link="HTML/050/AI_20081017_50_53_75.html" itemtitle="新聞測試圖片新聞" />
</bcaster>
添加節(jié)點的函數(shù):
/// 將圖片新聞信息寫入到圖片新聞播放器的XML文件集中
/// </summary>
/// <param name="picpath">圖片路徑</param>
/// <param name="htmlpath">圖片新聞網(wǎng)址</param>
/// <param name="title">標題</param>
public void WritePicNewsXML(string picpath, string htmlpath, string title,string aid)
{
XmlDocument xmlDoc;
xmlDoc = new XmlDocument();
xmlDoc.Load(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
XmlNodeList xnl = xmlDoc.SelectSingleNode("bcaster").ChildNodes;
//if (xnl.Count <= 5)//保持首頁圖片新聞不超過5條
//{
XmlNode rootnode = xmlDoc.SelectSingleNode("bcaster");
XmlElement fel = (XmlElement)rootnode.FirstChild;
XmlElement el = xmlDoc.CreateElement("item");//添加子節(jié)點及屬性
el.SetAttribute("id", aid);
el.SetAttribute("item_url", picpath);
el.SetAttribute("link", htmlpath);
el.SetAttribute("itemtitle", title);
rootnode.PrependChild(el);//將新加入的圖片新聞添加到第一個位置
if (xnl.Count > 5)
{
XmlNode lxn = rootnode.LastChild;
rootnode.RemoveChild(lxn);//刪除最末尾的圖片新聞
}
xmlDoc.Save(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
//}
}
修改XML節(jié)點的屬性的函數(shù):
/// <summary>
/// 修改XML屬性
/// </summary>
/// <param name="picpath"></param>
/// <param name="htmlpath"></param>
/// <param name="title"></param>
/// <param name="aid"></param>
public void EditPicNewsXML(string picpath, string htmlpath, string title, string aid)
{
XmlDocument xmlDoc;
xmlDoc = new XmlDocument();
xmlDoc.Load(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
XmlNodeList xnl = xmlDoc.SelectSingleNode("bcaster").ChildNodes;
foreach (XmlNode xn in xnl)
{
XmlElement xe = (XmlElement)xn;
if (xe.GetAttribute("id") == aid)//如果節(jié)點存在則改寫
{
xe.SetAttribute("item_url", picpath);
xe.SetAttribute("link", htmlpath);
xe.SetAttribute("itemtitle", title);
break;
}
}
xmlDoc.Save(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
}
刪除指定的XML節(jié)點的函數(shù):
/// <summary>
/// 刪除XML指定節(jié)點
/// </summary>
/// <param name="aid"></param>
public void DelPicNewsXML(string aid)
{
XmlDocument xmlDoc;
xmlDoc = new XmlDocument();
xmlDoc.Load(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
XmlNodeList xnl = xmlDoc.SelectSingleNode("bcaster").ChildNodes;
foreach (XmlNode xn in xnl)
{
XmlElement xe = (XmlElement)xn;
if (xe.GetAttribute("id") == aid)//如果節(jié)點存在刪除
{
xe.RemoveAll();
break;
}
}
xmlDoc.Save(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
}
結(jié)構(gòu)如下:
復制代碼 代碼如下:
<?xml version="1.0" encoding="utf-8"?>
<bcaster>
<item id="79" item_url="PicNews/Img/u=404630538,2075277077" link="HTML/050/AI_20081017_50_53_79.html" itemtitle="111111111111111111" />
<item id="78" item_url="PicNews/Img/Index_04_01_06.jpg" link="HTML/050/AI_20081017_50_53_78.html" itemtitle="zengjia" />
<item id="77" item_url="PicNews/Img/bsxwf.jpg" link="HTML/050/AI_20081017_50_53_77.html" itemtitle="中國藥科大學研究生部" />
<item id="76" item_url="PicNews/Img/江寧大門.jpg" link="HTML/050/AI_20081017_50_53_76.html" itemtitle="研究生部圖片新聞" />
<item id="75" item_url="PicNews/Img/中國藥科大學校標(完美2).jpg" link="HTML/050/AI_20081017_50_53_75.html" itemtitle="新聞測試圖片新聞" />
</bcaster>
添加節(jié)點的函數(shù):
復制代碼 代碼如下:
/// 將圖片新聞信息寫入到圖片新聞播放器的XML文件集中
/// </summary>
/// <param name="picpath">圖片路徑</param>
/// <param name="htmlpath">圖片新聞網(wǎng)址</param>
/// <param name="title">標題</param>
public void WritePicNewsXML(string picpath, string htmlpath, string title,string aid)
{
XmlDocument xmlDoc;
xmlDoc = new XmlDocument();
xmlDoc.Load(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
XmlNodeList xnl = xmlDoc.SelectSingleNode("bcaster").ChildNodes;
//if (xnl.Count <= 5)//保持首頁圖片新聞不超過5條
//{
XmlNode rootnode = xmlDoc.SelectSingleNode("bcaster");
XmlElement fel = (XmlElement)rootnode.FirstChild;
XmlElement el = xmlDoc.CreateElement("item");//添加子節(jié)點及屬性
el.SetAttribute("id", aid);
el.SetAttribute("item_url", picpath);
el.SetAttribute("link", htmlpath);
el.SetAttribute("itemtitle", title);
rootnode.PrependChild(el);//將新加入的圖片新聞添加到第一個位置
if (xnl.Count > 5)
{
XmlNode lxn = rootnode.LastChild;
rootnode.RemoveChild(lxn);//刪除最末尾的圖片新聞
}
xmlDoc.Save(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
//}
}
修改XML節(jié)點的屬性的函數(shù):
復制代碼 代碼如下:
/// <summary>
/// 修改XML屬性
/// </summary>
/// <param name="picpath"></param>
/// <param name="htmlpath"></param>
/// <param name="title"></param>
/// <param name="aid"></param>
public void EditPicNewsXML(string picpath, string htmlpath, string title, string aid)
{
XmlDocument xmlDoc;
xmlDoc = new XmlDocument();
xmlDoc.Load(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
XmlNodeList xnl = xmlDoc.SelectSingleNode("bcaster").ChildNodes;
foreach (XmlNode xn in xnl)
{
XmlElement xe = (XmlElement)xn;
if (xe.GetAttribute("id") == aid)//如果節(jié)點存在則改寫
{
xe.SetAttribute("item_url", picpath);
xe.SetAttribute("link", htmlpath);
xe.SetAttribute("itemtitle", title);
break;
}
}
xmlDoc.Save(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
}
刪除指定的XML節(jié)點的函數(shù):
復制代碼 代碼如下:
/// <summary>
/// 刪除XML指定節(jié)點
/// </summary>
/// <param name="aid"></param>
public void DelPicNewsXML(string aid)
{
XmlDocument xmlDoc;
xmlDoc = new XmlDocument();
xmlDoc.Load(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
XmlNodeList xnl = xmlDoc.SelectSingleNode("bcaster").ChildNodes;
foreach (XmlNode xn in xnl)
{
XmlElement xe = (XmlElement)xn;
if (xe.GetAttribute("id") == aid)//如果節(jié)點存在刪除
{
xe.RemoveAll();
break;
}
}
xmlDoc.Save(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
}
相關文章
httpHandler實現(xiàn).Net無后綴名Web訪問的實現(xiàn)解析
有時候我們看到很多網(wǎng)站是網(wǎng)址是沒有后綴名的,其實.net中可以通過httpHandler來實現(xiàn)。2011-10-10
.Net極限生產(chǎn)力之分表分庫全自動化Migrations?Code-First
這篇文章主要介紹了.Net極限生產(chǎn)力之分表分庫全自動化Migrations?Code-First,輕量級針對分表分庫讀寫分離的解決方案,具有零依賴、零學習成本、零業(yè)務代碼入侵適配2022-07-07
在 ASP.Net Core 中使用 MiniProfiler的方法
這篇文章主要介紹了在 ASP.Net Core 中使用 MiniProfiler的方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03
ASP.NET MVC 4使用PagedList.Mvc分頁的實現(xiàn)代碼
本篇文章主要介紹了ASP.NET MVC 4使用PagedList.Mvc分頁的實現(xiàn)代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07
ASP.NET Core使用JWT自定義角色并實現(xiàn)策略授權需要的接口
這篇文章介紹了ASP.NET Core使用JWT自定義角色并實現(xiàn)策略授權需要的接口,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-01-01
asp.net 修改/刪除站內(nèi)目錄操作后Session丟失問題
在Web項目中使用 Directory.Move(olddir,newdir)修改目錄名稱或使用Directory.Delete(true)刪除目錄后, 發(fā)現(xiàn)Session都失效。2010-01-01
徹底解決ASP.NET MD5加密中文結(jié)果和ASP不一致的問題
ASP.NET MD5加密中文結(jié)果和ASP不一致的問題的解決方法2009-07-07

