Asp.net XML文檔進(jìn)行添加刪改操作的實(shí)例代碼
結(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="中國藥科大學(xué)研究生部" />
<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/中國藥科大學(xué)校標(biāo)(完美2).jpg" link="HTML/050/AI_20081017_50_53_75.html" itemtitle="新聞測(cè)試圖片新聞" />
</bcaster>
添加節(jié)點(diǎn)的函數(shù):
/// 將圖片新聞信息寫入到圖片新聞播放器的XML文件集中
/// </summary>
/// <param name="picpath">圖片路徑</param>
/// <param name="htmlpath">圖片新聞網(wǎng)址</param>
/// <param name="title">標(biāo)題</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é)點(diǎn)及屬性
el.SetAttribute("id", aid);
el.SetAttribute("item_url", picpath);
el.SetAttribute("link", htmlpath);
el.SetAttribute("itemtitle", title);
rootnode.PrependChild(el);//將新加入的圖片新聞添加到第一個(gè)位置
if (xnl.Count > 5)
{
XmlNode lxn = rootnode.LastChild;
rootnode.RemoveChild(lxn);//刪除最末尾的圖片新聞
}
xmlDoc.Save(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
//}
}
修改XML節(jié)點(diǎn)的屬性的函數(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é)點(diǎn)存在則改寫
{
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é)點(diǎn)的函數(shù):
/// <summary>
/// 刪除XML指定節(jié)點(diǎn)
/// </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é)點(diǎn)存在刪除
{
xe.RemoveAll();
break;
}
}
xmlDoc.Save(HttpContext.Current.Server.MapPath("../PicNews/bcastr.xml"));
}
相關(guān)文章
httpHandler實(shí)現(xiàn).Net無后綴名Web訪問的實(shí)現(xiàn)解析
有時(shí)候我們看到很多網(wǎng)站是網(wǎng)址是沒有后綴名的,其實(shí).net中可以通過httpHandler來實(shí)現(xiàn)。2011-10-10
.Net極限生產(chǎn)力之分表分庫全自動(dòng)化Migrations?Code-First
這篇文章主要介紹了.Net極限生產(chǎn)力之分表分庫全自動(dòng)化Migrations?Code-First,輕量級(jí)針對(duì)分表分庫讀寫分離的解決方案,具有零依賴、零學(xué)習(xí)成本、零業(yè)務(wù)代碼入侵適配2022-07-07
在 ASP.Net Core 中使用 MiniProfiler的方法
這篇文章主要介紹了在 ASP.Net Core 中使用 MiniProfiler的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03
ASP.NET MVC 4使用PagedList.Mvc分頁的實(shí)現(xiàn)代碼
本篇文章主要介紹了ASP.NET MVC 4使用PagedList.Mvc分頁的實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07
asp.net下按鈕點(diǎn)擊后禁用的實(shí)現(xiàn)代碼
有時(shí)候?yàn)榱瞬蛔層脩暨B續(xù)的點(diǎn)擊某按鈕,我們會(huì)選擇將其在點(diǎn)擊后禁用。2010-09-09
ASP.NET Core使用JWT自定義角色并實(shí)現(xiàn)策略授權(quán)需要的接口
這篇文章介紹了ASP.NET Core使用JWT自定義角色并實(shí)現(xiàn)策略授權(quán)需要的接口,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-01-01
C#.net格式化時(shí)間字符串達(dá)到不同的顯示效果
時(shí)候我們要對(duì)時(shí)間進(jìn)行轉(zhuǎn)換,達(dá)到不同的顯示效果,本文將幫助你實(shí)現(xiàn)這個(gè)多彩的效果,整理很詳細(xì),以備不時(shí)之需,感興趣的朋友可以了解下,或許本文對(duì)你有所幫助2013-01-01
asp.net 修改/刪除站內(nèi)目錄操作后Session丟失問題
在Web項(xiàng)目中使用 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

