XML ファイルがあり、この XML が文字列として渡される関数があります。この文字列を Xmldocument にロードしましたが、1 つのノードの下にいくつかの子ノードを挿入する必要があります。この関数は、変更された XML 文字列を返します。この関数が呼び出されるたびに、新しい子ノードが追加されるようにしたいのですが、現在、子ノードは 1 回追加されます。
XML ファイルを上書きする必要がありますか? その場合、関数が再度呼び出される前に子ノードが追加されるように、ノードを新しいノード (新しい子ノードが追加された状態) に置き換えるにはどうすればよいですか?
私のコードは次のようになります。
Dim doc As New XmlDocument
doc.LoadXml(applicationXml)
Dim parentNode As XmlNode = doc.GetElementsByTagName("prList").Item(0)
Dim newElement As XmlNode = doc.CreateNode(XmlNodeType.Element, "gate.util.persistence.LanguageAnalyserPersistence", Nothing)
Dim runtimeParamsElement As XmlNode = doc.CreateNode(XmlNodeType.Element, "runtimeParams", Nothing)
Dim xa As XmlAttribute = doc.CreateAttribute("class")
xa.Value = "gate.util.persistence.MapPersistence"
runtimeParamsElement.Attributes.Append(xa)
localMapElement = doc.CreateNode(XmlNodeType.Element, "localMap", Nothing)
featuresElement.AppendChild(localMapElement)
newElement.AppendChild(featuresElement)
Return doc.InnerXml