请帮我解决这个问题: 我有Excel文件并尝试使用VB.Net和XDocument / XML Literals生成XML文件... 生成后有一个文件:
....
<Payload>
<ns1:BidSet xmlns="http://... xmlns:ns0="http://.... xmlns:ns1="http://....>
<tradingDate xmlns="">2016-10-31</tradingDate>
<PTPObligation xmlns="">
....
....
</PTPObligation>
</ns1:BidSet>
</Payload>
....
空但我需要从所有标签(节点)删除空xmlns=""
并从所有节点删除ns1:
。
我这样做是因为男女同校:
Dim settings As XmlWriterSettings = New XmlWriterSettings()
settings.Encoding = New UTF8Encoding(False)
Dim Input = File.ReadAllText(outfile)
Dim output = Regex.Replace(Input, "(ns1:)", "")
File.WriteAllText(outfile, output)
Dim AllElements =
From elem In xdoc.Descendants()
Where elem.Name = NameOfBid
Select elem
For Each elem As XElement In AllElements
If elem.Name.NamespaceName = "" Then
elem.Attributes("xmlns").Remove()
elem.Name = elem.Parent.Name.Namespace + elem.Name.LocalName
Using writer = XmlWriter.Create(outfile, settings)
xdoc.Save(writer)
End Using
End If
Next
但Excel文件有很多行,XML文件有很多应该被处理的节点。 这个程序工作时间太长了。 是否有可能使用VB.Net(或者可能是C#-code)删除我需要但速度更快的所有内容?