【发布时间】:2015-10-02 00:46:28
【问题描述】:
我有一个名为Port Characteristics 的类,如下所示:
<Serializable()> Public Class PortCharacteristics
Public portNum As Int16
Public bRate As Integer
Public par As String
Public len As String
Public stopb As String
Public flow As String
Public Sub New()
End Sub
Public Sub New(ByVal valPortNum As Int16, ByVal valBRate As Integer, ByVal valPar As String, ByVal valLen As String, ByVal valStopb As String, ByVal valFlow As String)
portNum = valPortNum
bRate = valBRate
par = valPar
len = valLen
stopb = valStopb
flow = valFlow
End Sub
End Class
我还有另一个类Profile,其中包含Port Characteristics:
<Serializable()> Public Class Profile
Public profileName As String
Public chars As PortCharacteristics
Public Property PortChar As PortCharacteristics
Get
Return chars
End Get
Set(value As PortCharacteristics)
chars = value
End Set
End Property
Public Sub New()
End Sub
Public Sub New(ByVal profName As String, ByVal portNum As Int16, ByVal baud As Integer, ByVal par As String, ByVal length As String, ByVal stopB As String, ByVal flowCon As String)
Name = profName
PortChar = New PortCharacteristics(portNum, baud, par, length, stopB, flowCon)
End Sub
End Class
我这样序列化 Profile 类:
If My.Computer.FileSystem.FileExists("profiles.xml") Then
My.Computer.FileSystem.DeleteFile("profiles.xml")
End If
Using fs As New FileStream("profiles.xml", FileMode.OpenOrCreate)
Dim Xml As New XmlSerializer(GetType(List(Of Profile)))
Xml.Serialize(fs, ProfileList)
End Using
是否可以在同一个文件的 XML 对象中序列化对象,还是必须使用二进制或其他类型的序列化?
【问题讨论】:
-
第二课的目的是什么?这不会按原样编译,
PortCharString例如引用不存在的属性/成员 -
哦,对不起,我在 PortCharString 中取出了一些属性,以使其对问题更具可读性。 PortCharacteristics 是一组特征,PortProfile 是包含 PortCharacteristics 中的特征的不同设置的集合。
-
PortProfile is a collection不,不是。它是一个添加了 ProfileName 的 PortItem。还有ProfileList是什么?
标签: xml vb.net serialization