【问题标题】:Insert new element to XML将新元素插入 XML
【发布时间】:2013-02-01 10:08:45
【问题描述】:

我有一个将新课程插入课程 XML 的程序。这是 XML 文件:

Course.xml

<Courses>

   <Course>
      <Name>ABC course</Name>
      <Lessons>
         <Lesson>
           <Lesson_name>Learn ABC!</Lesson_name>
           <Lesson_date>XX/XX/XXXX</Lesson_date>
         </Lesson>


        'WANT TO ADD A LESSON HERE!!!


      </Lessons>
   </Course>

   <Course>
      <Name>DEF Course</Name>
      <Lesson>
        <Lesson_name>Learn DEF!</Lesson_name>
        <Lesson_date>XX/XX/XXXX</Lesson_date>
      </Lesson>
   </Course>

</Courses>

我想在不影响现有课程和其他元素的情况下插入包含所有这些节点的课程,例如 LessonLesson_dateLesson_name 等。有什么简单的方法吗?

【问题讨论】:

    标签: xml vb.net


    【解决方案1】:

    这样的事情应该可以工作:

    Dim xmlDoc As XmlDocument = New XmlDocument()
    xmlDoc.Load("Course.xml")
    
    Dim courseName = "ABC course"
    With xmlDoc.SelectSingleNode("/Courses/Course[Name = '" & courseName & "']/Lessons").CreateNavigator().AppendChild()
        .WriteStartElement("Lesson")
        .WriteElementString("Lesson_name", "Learn something else!")
        .WriteElementString("Lesson_date", "YY/YY/YYYY")
        .WriteEndElement()
        .Close()
    End With
    

    如果你想修改实际文件,你可以在之后使用xmlDoc.Save()

    【讨论】:

    • 感谢您的回复!但是只是想知道如何选择插入特定课程? =p
    • 非常感谢!!!稍后再试一下……这已经让我烦恼了一段时间/。\
    【解决方案2】:

    通过使用 DataSet.ReadXml Method 您可以做到这一点。更改数据集表中的值并使用 DataSet.WriteXml Method

    【讨论】:

    • 你能给我一些例子吗? =] 感谢您的快速回复 XD
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多