我想将XmlTextWriter输出数据导出(转换)为字符串变量。
我的代码如下:
'' write data as xml
Dim objX As New XmlTextWriter(Response.OutputStream, Encoding.UTF8)
objX.WriteStartDocument()
objX.WriteStartElement("Transaction")
objX.WriteAttributeString("version", "1.0")
objX.WriteElementString("id", "12")
objX.WriteElementString("token", "4534gfdgdfhfst")
objX.WriteEndElement()
objX.WriteEndDocument()
objX.Flush()
objX.Close()
Response.End()
现在获取的xml输出如下:38824e4760a1b72f9bd95723a3bdffbd02280010.50en3475990rapids1 month rapidshare0.46587748175.136.184.1539/14/2012d7a1ff2200f9fe7b8b89d12fdc8be8f36293712eS. how to make it as xml tags
答案 0 :(得分:4)
您已将XmlTextWriter
配置为直接写入Response.OutputStream
。如果您想将其导出为字符串变量,可以使用StringWriter
来写入StringBuilder
。
Dim sb As New StringBuilder()
Using sw As New StringWriter(sb)
Using writer = XmlWriter.Create(sw)
' write the XML to the writer here
End Using
End Using
' At this stage the StringBuilder will contain the generated XML.
作为替代方案,您可以写信给MemoryStream
:
Using stream As New MemoryStream()
Using writer = XmlWriter.Create(stream)
' write the XML to the writer here
Dim xml As String = Encoding.UTF8.GetString(stream.ToArray())
' TODO: do something with the generated XML
End Using
End Using