如何作为一组属性附加到现有的xml文件

普里扬卡拉

这是我想要得到的xml文件。它包含灾难详细信息编号01、02、03及以后。灾难由灾难ID标识。

<?xml version="1.0" encoding="utf-8" ?>
<disasters>
  <disaster ID="001"
      disaterType="Flood"
      location="Matara"
      date="20-01-2012"
      noOfVictims="245">
      <victims>
          <victim type="adult"
               gender="male"
               amount="46"
               />
        <victim type="children"
             gender="female"
             amount="460"/>
      </victims>
          <requiredItems>
             <requiredItem type="Food"
                  itemName="Rice" 
                  description="null"
                  quantity="367"/>
             <requiredItem type="Stationary"
                  itemName="Pens"
                  description="null"
                  quantity="87"/>
          </requiredItems>
  </disaster>
  <disaster ID="002" // This is a separate disaster detail list
     disaterType="Tsunami"
     location="Galle"
     date="10-05-2009"
     noOfVictims="845">
      <victims>
          <victim type="children"
               gender="male"
               amount="46"
               />
          <victim type="children"
               gender="female"
               amount="460"/>
      </victims>
         <requiredItems>
           <requiredItem type="Clothes"
                itemName="Tshirts"
                description="male"
                quantity="67"/>
           <requiredItem type="Food"
                itemName="bread"
                description="null"
                quantity="37"/>
         </requiredItems>  
  </disaster> // end of the second list of disaster details
</disasters>

这是我的代码。但只会添加新的灾难ID。其余细节未正确附加。**代码将附加到第一个灾难ID,但是我想将它们添加到第二个灾难ID中,并将它们标识为新的灾难。提前致谢

        if (System.IO.File.Exists(path))
        {
        XmlDocument xDoc = new XmlDocument();
            xDoc.Load("C:\\4 ITP la laaa\\me doing\\disasters.xml");
            XmlNode xNode = xDoc.CreateNode(XmlNodeType.Element, "disaster", "");
            XmlAttribute id = xDoc.CreateAttribute("ID");
            XmlAttribute disaterType = xDoc.CreateAttribute("value");
            XmlAttribute location = xDoc.CreateAttribute("value1");
            XmlAttribute date = xDoc.CreateAttribute("value2");
            XmlAttribute noOfVictims = xDoc.CreateAttribute("value3");
            id.Value = "001";
            disaterType.Value = "Flood";
            date.Value = " value1";
            noOfVictims.Value = "date";
            xNode.Attributes.Append(id);
            xNode.Attributes.Append(disaterType);
            --
            --

            XmlNode xNode1 = xDoc.CreateNode(XmlNodeType.Element, "victims", "");
            XmlAttribute type = xDoc.CreateAttribute("type");

            type.Value = "adult";
            gender.Value = "male";
            value.Value = "46";
            --
            --
            xDoc.GetElementsByTagName("disasters")[0].InsertAfter(xNode,        xDoc.GetElementsByTagName("disasters")[0].LastChild);
            **xDoc.GetElementsByTagName("victims")[0].InsertAfter(xNode1, xDoc.GetElementsByTagName("victims")[0].LastChild);**

            xDoc.Save("C:\\4 ITP la laaa\\me doing\\disasters.xml");
            Label1.Text=("Apended");
亨克·霍尔特曼

您的代码似乎太复杂了。我只解决了**一个。

xDoc.GetElementsByTagName("disasters")[0].InsertAfter(xNode, 
    xDoc.GetElementsByTagName("disasters")[0].LastChild);

//xDoc.GetElementsByTagName("victims")[0].InsertAfter(xNode1, 
//       xDoc.GetElementsByTagName("victims")[0].LastChild);
xNode.AppendChild(xNode1);  // <visitors> is simply a direct child of <disaster>

首选方式 using System.Xml.Linq;

XDocument xDoc = XDocument.Load("ExistingFile.xml");

XElement newDisaster = new XElement("disaster", 
        new XAttribute("ID", 2),
        new XAttribute("location", "Galle"),
        ...
        new XElement("victims", 
           new XElement("victim", 
              new XAttribute("type", "children"),
              ...
       )));

xDoc.Element("disasters").Add(newDisaster);
xDoc.Save("SomeFileName.xml");

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何从一组现有项目中创建解决方案文件(.sln)?

来自分类Dev

如何附加到现有的屏幕会话或创建一个新的屏幕会话并运行命令?

来自分类Dev

如何附加到现有的共享内存段

来自分类Dev

使用PHP将新对象附加到外部JSON文件中现有的数组

来自分类Dev

将代码附加到一组文件中的每隔一行

来自分类Dev

在Unity3d中,如何将浮动窗口(例如,灯光映射)添加到现有的一组选项卡(例如:Inspector)中?

来自分类Dev

如何将数据附加到现有的LMDB?

来自分类Dev

如何将名称空间添加到现有的xml文件

来自分类Dev

使用python(和matplotlib?)将页面附加到现有的pdf文件中

来自分类Dev

如何将数据附加到现有的Dropbox文件?

来自分类Dev

如何将Newman htmlextra结果附加到现有的htmlextra报告文件中

来自分类Dev

如何在Qt中将json数据附加到现有的json文件中

来自分类Dev

Javascript:将新值添加到一组值(分钟)中,这距现有的两个cronjobs都最远

来自分类Dev

如何使用Python将数据附加到现有的AVRO文件中

来自分类Dev

如何将数据附加到现有的Excel文件中?

来自分类Dev

附加到现有的SSH隧道

来自分类Dev

如何附加到现有的共享内存段

来自分类Dev

如何使用Perl将XML数据节点附加到现有文件?

来自分类Dev

附加到现有的TeamCity参数

来自分类Dev

使用一组现有的小部件创建自定义小部件?

来自分类Dev

如何将数据附加到现有的Dropbox文件?

来自分类Dev

将一组现有的QPushButtons转换为单个数组

来自分类Dev

创建一个 iframe 并将其附加到所有现有的目标 div 并填充 src 属性

来自分类Dev

如何将数据附加到现有的 Dropbox 文件?(API v2)

来自分类Dev

用一组全新的文件替换现有的个人仓库主文件

来自分类Dev

将数据附加到现有的 json 文件

来自分类Dev

如何附加到现有文件

来自分类Dev

如何将“a.csv”文件添加到现有的Excel文件“b.xlsx”中作为一个新的工作表,csv文件名作为Python中的工作表名称?

来自分类Dev

如何将现有的 html 元素附加到另一个元素?

Related 相关文章

  1. 1

    如何从一组现有项目中创建解决方案文件(.sln)?

  2. 2

    如何附加到现有的屏幕会话或创建一个新的屏幕会话并运行命令?

  3. 3

    如何附加到现有的共享内存段

  4. 4

    使用PHP将新对象附加到外部JSON文件中现有的数组

  5. 5

    将代码附加到一组文件中的每隔一行

  6. 6

    在Unity3d中,如何将浮动窗口(例如,灯光映射)添加到现有的一组选项卡(例如:Inspector)中?

  7. 7

    如何将数据附加到现有的LMDB?

  8. 8

    如何将名称空间添加到现有的xml文件

  9. 9

    使用python(和matplotlib?)将页面附加到现有的pdf文件中

  10. 10

    如何将数据附加到现有的Dropbox文件?

  11. 11

    如何将Newman htmlextra结果附加到现有的htmlextra报告文件中

  12. 12

    如何在Qt中将json数据附加到现有的json文件中

  13. 13

    Javascript:将新值添加到一组值(分钟)中,这距现有的两个cronjobs都最远

  14. 14

    如何使用Python将数据附加到现有的AVRO文件中

  15. 15

    如何将数据附加到现有的Excel文件中?

  16. 16

    附加到现有的SSH隧道

  17. 17

    如何附加到现有的共享内存段

  18. 18

    如何使用Perl将XML数据节点附加到现有文件?

  19. 19

    附加到现有的TeamCity参数

  20. 20

    使用一组现有的小部件创建自定义小部件?

  21. 21

    如何将数据附加到现有的Dropbox文件?

  22. 22

    将一组现有的QPushButtons转换为单个数组

  23. 23

    创建一个 iframe 并将其附加到所有现有的目标 div 并填充 src 属性

  24. 24

    如何将数据附加到现有的 Dropbox 文件?(API v2)

  25. 25

    用一组全新的文件替换现有的个人仓库主文件

  26. 26

    将数据附加到现有的 json 文件

  27. 27

    如何附加到现有文件

  28. 28

    如何将“a.csv”文件添加到现有的Excel文件“b.xlsx”中作为一个新的工作表,csv文件名作为Python中的工作表名称?

  29. 29

    如何将现有的 html 元素附加到另一个元素?

热门标签

归档