我有以下序列化方法:
Private Function SerializeData(ByVal data As cData) As String
If data IsNot Nothing Then
Dim xml_stream As New MemoryStream()
Dim sr As StreamReader
Dim xs As New XmlSerializer(GetType(cData))
xml_stream = New MemoryStream()
Try
xs.Serialize(xml_stream, data)
xml_stream.Position = 0
sr = New StreamReader(xml_stream)
Return sr.ReadToEnd()
Finally
If sr IsNot Nothing Then sr.Close()
xml_stream.Close()
End Try
Else
Return "No data"
End If
End Function
但是它返回嵌套元素缩进的 xml。有没有办法在序列化器上关闭它,或者我是否需要运行一个查找替换例程来摆脱它?
本质上,我想看到的是:
<root><child1>data</child1><child2>data</child2></root>
最佳答案
使用接受 XmlWriter 参数的序列化覆盖。使用 XmlWriter::Create 创建 XmlWriter,传入一个 Indent 属性设置为 false 的 XmlWriterSettings 对象。
关于.net - XML 序列化,无空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/180018/