使用转义字符替换&与&在xml文件vb.net中

时间:2012-01-23 01:28:00

标签: xml vb.net escaping character

我正在尝试更换&在xml文档中的服务名称中。

&导致错误。无论如何,我可以写一些代码将逃脱“&”作为“& a m p;”?

1 个答案:

答案 0 :(得分:2)

考虑使用XmlTextWriter来写出XML;它将为你处理逃跑。

代码可能如下所示:

    Dim writer As Xml.XmlTextWriter

    writer = New Xml.XmlTextWriter("C:\Temp\Services.xml", System.Text.Encoding.UTF8)
    writer.Formatting = Xml.Formatting.Indented

    writer.WriteStartDocument()
    writer.WriteStartElement("Services")

    For Each item As KeyValuePair(Of String, Service) In discservice
        writer.WriteStartElement("Name")
        writer.WriteString(item.Key)
        writer.WriteElementString("DisplayName", item.Value.DisplayName)
        writer.WriteElementString("ServiceName", item.Value.ServiceName)
        writer.WriteElementString("ServiceStatus", item.Value.ServiceStatus)
        writer.WriteEndElement()
    Next

    writer.WriteEndElement()
    writer.WriteEndDocument()
    writer.Close()

显然,如果您要写入流而不是文件,则需要使用XmlTextWriter的其他构造函数。