当前位置:首页 » 编程语言 » phpxml删除节点

phpxml删除节点

发布时间: 2022-10-29 05:40:33

php删除xml文件根节点以外的所有节点怎么写

删除所有的节点,添加根节点

㈡ xml删除一个节点

删除指定的XML节点

呵呵,今天总算有点成绩了。明白了如何添加XML节点,现在又搞懂了如何删除XML节点。下面说一下具体的方法:

下面是XML文档:

<?xml version="1.0" encoding="gb2312"?>
<data>
<list>
<url>cns!1pg3-qZraLhileWMaX48lbhg!246.entry</url>
<title>试用 FCKeditor 2.0 RC3</title>
<rq>6.13</rq>
</list>
<list>
<url>cns!1pg3-qZraLhileWMaX48lbhg!287.entry</url>
<title>比尔盖茨给马化腾的一封信</title>
<rq>6.6</rq>
</list>
<list>
<url>cns!1pg3-qZraLhileWMaX48lbhg!282.entry</url>
<title>溜之大吉 v1.0</title>
<rq>6.2</rq>
</list>
<list>
<url>cns!1pg3-qZraLhileWMaX48lbhg!281.entry</url>
<title>一个女孩儿的自恋</title>
<rq>6.1</rq>
</list>
</data>

要想删除指定的XML节点,必须要有指定的删除条件。在这儿,我选择二项:title、rq。

下面是实现过程(C#代码):

<% @ Page Language="c#" %>
<% @ Import Namespace="System.Xml" %>
<Script Language="C#" Runat="Server">
void Page_Load(){
string theTitle="试用 FCKeditor 2.0 RC3";
string theRq="6.13";
// 创建一个XmlDocument对象
string xmlPath=Server.MapPath("blog.xml");
XmlDocument xmlDoc=new XmlDocument();
// 加载指定的XML数据
xmlDoc.Load(xmlPath);
// 选择匹配 XPath 表达式的第一个 XmlNode
XmlNode root=xmlDoc.SelectSingleNode("data");
// 获取节点的所有子节点
XmlNodeList xnList=root.ChildNodes;
bool isFinded=false;
foreach(XmlNode xn in xnList){
if(xn.SelectSingleNode("title").InnerText==theTitle && xn.SelectSingleNode("rq").InnerText==theRq){
isFinded=true;
root.RemoveChild(xn);// 移除指定的子节点
xmlDoc.Save(xmlPath);
break;
}
}
// 显示结果
if(isFinded)
Response.Write ("已删除");
else
Response.Write ("未找到相应的记录");
}
</Script>

㈢ 如何删除xml中结点的某个属性

删除属性
1 public void DeleteAttribute(string xmlPath)
2 {
3 XmlDocument xmlDoc = new XmlDocument();
4 xmlDoc.Load(xmlPath);
5 XmlElement node = (XmlElement)xmlDoc.SelectSingleNode("BookStore/NewBook");
6 //移除指定属性
7 node.RemoveAttribute("Name");
8 //移除当前节点所有属性,不包括默认属性
9 //node.RemoveAllAttributes();
10 xmlDoc.Save(xmlPath);
11 }

㈣ PHP+XML怎样删除多重节点

用jdom或者dom4j,可以很轻松的通过调用他们的API来达到你的要求

㈤ php删除指定xml

你试试把$_GET[tu_id]强制转换试试
(int)$_GET["tu_id"]

㈥ C#中如何删除XML文件中的某个节点

假设有如下XML文件:

<?xmlversion="1.0"encoding="utf-8"?>
<books>
<bookname="失踪的孩子"isbn="9787020139927"author="[意]埃莱娜·费兰特"/>
<bookname="我要快乐,不必正常"isbn="9787559614988"author="[英]珍妮特·温特森"/>
</books>

如下代码可移除name为"我要快乐,不必正常"的节点:

stringfilePath="D:\XMLFile1.xml";
//创建一个XML文档对象
XmlDocumentdocument=newXmlDocument();
//加载文档
document.Load(filePath);
//获取所有book节点
XmlNodeListnodes=document.GetElementsByTagName("book");
//遍历节点,如果节点的name属性为"我要快乐,不必正常",则从父节点中删除
//这里之所以从后向前遍历,是为了处理删除节点之后节点集合变化的问题
for(inti=nodes.Count-1;i>=0;i--)
{
XmlNodenode=nodes[i];
if(node.Attributes["name"]!=null
&&node.Attributes["name"].Value=="我要快乐,不必正常")
{
node.ParentNode.RemoveChild(node);
}
}

//删除节点之后,保存文档;
document.Save(filePath);

运行之后文档变为:

㈦ 对已经有的xml文件添加删除节点怎么操作

没接触过对xml的操作...
既然是在页面上操作,就是对DOM节点的操作;

$(obj).remove(); //这是移除对象节点
$(obj).html('xxxxx'); $(obj).append(); 等方法也都可以对dom结构进行更改操作。

如果是我所说的dom节点操作,你可以看下jquery手册里面的“dom处理”,如果不是我也不太清楚了。

㈧ 如何用最简单的方法删除xml文件下指定节点的全部内容

InputStream is = new FileInputStream("D://dom4j.xml");
SAXReader reader = new SAXReader();
Document doc = reader.read(is);
doc.normalize();
Node node = doc.selectSingleNode("/datas/*");//查找datas下的第一个子结点的内空
node.getParent().remove(node);

OutputFormat outformat = OutputFormat.createPrettyPrint();
// xml自身的编码
outformat.setEncoding(doc.getXMLEncoding());
outformat.setIndent(true);

File targetFile = new File("D:/dom4j3.xml");
// 将xmlStr输出到目标路径,使用xml文件的头文件编码
OutputStream out = new FileOutputStream(targetFile);
XMLWriter writer = new XMLWriter(out, outformat);
// 是否转义特殊字符,默认true转义,false表示不转义
writer.setEscapeText(false);
writer.write(doc);
writer.flush();

热点内容
android表格绘制 发布:2025-09-24 03:24:03 浏览:319
fatfs源码 发布:2025-09-24 03:15:11 浏览:327
easydarwin服务器搭建 发布:2025-09-24 03:15:10 浏览:345
南充存储服务器地址怎么找 发布:2025-09-24 02:58:24 浏览:228
联想24针服务器开关针脚怎么接 发布:2025-09-24 02:56:08 浏览:340
javanumber 发布:2025-09-24 02:42:30 浏览:215
windows7访问xp共享文件夹 发布:2025-09-24 02:31:26 浏览:358
4399账号绑定qq怎么改密码 发布:2025-09-24 01:52:15 浏览:746
数据库access2010教程 发布:2025-09-24 01:42:13 浏览:910
临时存储器 发布:2025-09-24 01:38:33 浏览:716