-1

これは私のXMLです:

<location>
  <hotspot name="name1" X="444" Y="518" />
  <hotspot name="name2" X="542" Y="452" /> 
  <hotspot name="name3" X="356" Y="15" />
</location>

私がやりたいことは次のとおりです。

<location>
  <hotspot name="name1" X="444" Y="518">
    <text>
      This is the text I want to add in
    </text>
  </hotspot>
  <hotspot name="name2" X="542" Y="452" /> 
  <hotspot name="name3" X="356" Y="15" />
</location>

テキストを追加できません。新しいノードに問題はありません。

4

1 に答える 1

3

質問に。のタグを付けたので、 (より新しいLinq to XMLタイプとは対照的に)fromタイプXmlNodeを使用していると想定しています。XmlDocumentSystem.XmlXDocument

本文テキストを含む新しいノードを追加するには、(必要な名前で)新しい要素を作成し、そのInnerTextvalueプロパティを設定して、ノード内のテキストを指定します。

// Load XML document and find the parent node
let doc = XmlDocument()
doc.LoadXml("... your xml goes here ...")
let parent = doc.SelectSingleNode("/location/hotspot[@name='name1']")

// Create a new element and set its inner text
let newNode = doc.CreateElement("text")
newNode.InnerText <- "foo"
parent.AppendChild(newNode)

CreateElement次のように呼び出すときにプロパティを指定して、同じことを書くこともできます。

doc.CreateElement("text", InnerText = "foo") |> nd.AppendChild
于 2012-06-10T22:20:56.733 に答える