Imports System.IO Imports System.Xml.Serialization Namespace Serialize Public Class Serializer ''' ''' 将类对象序列化为xml文件 ''' ''' ''' Public Shared Sub SerializeToXml(path As String, srcObject As Object) Dim serializer As New XmlSerializer(srcObject.GetType) Dim xmlString As String = String.Empty Using writer As New StringWriter serializer.Serialize(writer, srcObject) xmlString = writer.ToString() End Using Using ws As New StreamWriter(path) ws.Write(xmlString) End Using End Sub ''' ''' 将类对象序列化为xml文件 ''' ''' ''' Public Shared Sub SerializeToXml(Of T)(path As String, srcObject As T) Dim serializer As New XmlSerializer(GetType(T)) Dim xmlString As String Using writer As New StringWriter serializer.Serialize(writer, srcObject) xmlString = writer.ToString() End Using Using ws As New StreamWriter(path) ws.Write(xmlString) End Using End Sub ''' ''' 从Xml文件中反序列化成指定类 ''' ''' ''' ''' Public Shared Function DeserializeFormXml(Of T)(path As String) As T Dim serializer As New XmlSerializer(GetType(T)) Using reader As New StreamReader(path) Return CType(serializer.Deserialize(reader), T) End Using End Function End Class End Namespace