xml创建节点(根节点、子节点)

protected void Button1_Click(object sender, EventArgs e)//创建xml
{
//声明
XmlDocument x = new XmlDocument();
//创建
XmlDeclaration xd = x.CreateXmlDeclaration("1.0", "GB2312", null);
x.AppendChild(xd);
//创建根节点
XmlElement element = x.CreateElement("Books");
x.AppendChild(element);
//添加Books的子节点
XmlNode book = x.CreateElement("Book");
//给Book添加元素
XmlElement bookname = x.CreateElement("书名");
bookname.InnerText = "三国";
//逐级添加到节点上
book.AppendChild(bookname);
element.AppendChild(book);

x.AppendChild(element);

//unity3d脚本www.unitymanual.com
//保存文档(如果已经存在该文件,则更新之;如果没有,则创建该文件)
x.Save(@"F:/Books.xml");

}


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在C#中操作XML文档,可以使用`System.Xml.Linq`命名空间提供的类库来进行XML的读取、修改和写入等操作。以下是关于如何在XML文档中插入同级节点子节点的基本步骤: ### 插入同级节点 假设你有一个XML字符串或者已经加载了XML文件到Linq to XML的DOM树中。为了插入一个新的同级节点,你可以通过遍历当前元素的所有子元素,并在适当的位置创建新的元素。 #### 示例代码: ```csharp using System; using System.IO; using System.Xml.Linq; class Program { static void Main() { // 创建原始的XML字符串 string xmlStr = "<root>\n" + " <childA>Value A</childA>\n" + " <childB>Value B</childB>\n" + "</root>"; XDocument doc = XDocument.Parse(xmlStr); // 获取所有孩子节点 XElement root = (XElement)doc.Root!; IEnumerable<XElement> children = root.Elements(); // 计算孩子节点的数量 int childCount = children.Count(); // 创建新元素并插入到指定位置 XElement newChild = new XElement("newChild", "New Value"); doc.Root.Insert(childCount, newChild); // 写出修改后的XML字符串 string updatedXmlStr = doc.ToString(); Console.WriteLine(updatedXmlStr); } } ``` ### 插入子节点 插入子节点相对简单,只需要使用 `Add()` 方法将新元素添加到所需的位置即可。这里同样假设我们已经有了一个XML文档和其结构的引用。 #### 示例代码: ```csharp using System; using System.IO; using System.Xml.Linq; class Program { static void Main() { // 使用相同的XML字符串作为示例 string xmlStr = "<root>\n" + " <childA>Value A</childA>\n" + " <childB>Value B</childB>\n" + "</root>"; XDocument doc = XDocument.Parse(xmlStr); // 找到要插入子节点的元素位置,这里是找到名为"childA"的第一个元素之后 XElement parentElement = doc.Descendants("childA").First().Parent!; XElement childToInsert = new XElement("newChild", "Inserted Value"); // 将新元素插入到找到的元素之后 parentElement.AddAfterSelf(childToInsert); // 写出修改后的XML字符串 string updatedXmlStr = doc.ToString(); Console.WriteLine(updatedXmlStr); } } ``` ### 相关问题: 1. 在XML文档中如何查找特定元素的子元素? 2. 怎样从已解析的XML文档中删除某个节点? 3. C#中的LINQ to XML是否支持动态修改XML结构,例如改变属性值或者删除某些元素? --- 注意:以上代码示例需要正确处理异常情况,如XML解析错误、节点不存在等问题,在实际应用中应加入适当的错误检查机制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值