本文整理匯總了VB.NET中System.Runtime.Serialization.Formatters.Soap.SoapFormatter.Deserialize方法的典型用法代碼示例。如果您正苦於以下問題:VB.NET SoapFormatter.Deserialize方法的具體用法?VB.NET SoapFormatter.Deserialize怎麽用?VB.NET SoapFormatter.Deserialize使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類System.Runtime.Serialization.Formatters.Soap.SoapFormatter
的用法示例。
在下文中一共展示了SoapFormatter.Deserialize方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的VB.NET代碼示例。
示例1: App
' 導入命名空間
Imports System.IO
Imports System.Collections
Imports System.Runtime.Serialization
' Note: When building this code, you must reference the
' System.Runtime.Serialization.Formatters.Soap.dll assembly.
Imports System.Runtime.Serialization.Formatters.Soap
Module App
Sub Main()
Serialize()
Deserialize()
End Sub
Sub Serialize()
' Create a hashtable of values that will eventually be serialized.
Dim addresses As New Hashtable
addresses.Add("Jeff", "123 Main Street, Redmond, WA 98052")
addresses.Add("Fred", "987 Pine Road, Phila., PA 19116")
addresses.Add("Mary", "PO Box 112233, Palo Alto, CA 94301")
' To serialize the hashtable (and its key/value pairs),
' you must first open a stream for writing.
' Use a file stream here.
Dim fs As New FileStream("DataFile.soap", FileMode.Create)
' Construct a SoapFormatter and use it
' to serialize the data to the stream.
Dim formatter As New SoapFormatter
Try
formatter.Serialize(fs, addresses)
Catch e As SerializationException
Console.WriteLine("Failed to serialize. Reason: " & e.Message)
Throw
Finally
fs.Close()
End Try
End Sub
Sub Deserialize()
' Declare the hashtable reference.
Dim addresses As Hashtable = Nothing
' Open the file containing the data that you want to deserialize.
Dim fs As New FileStream("DataFile.soap", FileMode.Open)
Try
Dim formatter As New SoapFormatter
' Deserialize the hashtable from the file and
' assign the reference to the local variable.
addresses = DirectCast(formatter.Deserialize(fs), Hashtable)
Catch e As SerializationException
Console.WriteLine("Failed to deserialize. Reason: " & e.Message)
Throw
Finally
fs.Close()
End Try
' To prove that the table deserialized correctly,
' display the key/value pairs to the console.
Dim de As DictionaryEntry
For Each de In addresses
Console.WriteLine("{0} lives at {1}.", de.Key, de.Value)
Next
End Sub
End Module
開發者ID:VB.NET開發者,項目名稱:System.Runtime.Serialization.Formatters.Soap,代碼行數:70,代碼來源:SoapFormatter.Deserialize
示例2: Tester
' 導入命名空間
Imports System
Imports System.IO
Imports System.Runtime.Serialization
Imports System.Runtime.Serialization.Formatters.Binary
Imports System.Runtime.Serialization.Formatters.Soap
Public Class Tester
Public Shared Sub Main
Dim myClsSerializable As New ClsSerializable()
SerializeSoap(myClsSerializable)
Console.WriteLine(FileContent(False))
Dim myFileStream As FileStream
myFileStream = New FileStream("test.dat", FileMode.Open, FileAccess.Read)
Dim myFormatter As New SoapFormatter()
myClsSerializable = CType(myFormatter.Deserialize(myFileStream), ClsSerializable)
Console.WriteLine(myClsSerializable.strMessage)
End Sub
Private Shared Function FileContent(ByVal blnBinary As Boolean) As String
Dim strContent As String
Dim myStreamReader As StreamReader
Dim myFileStream As FileStream
Dim i As Integer
Try
myFileStream = New FileStream("test.dat", FileMode.Open, FileAccess.Read)
If blnBinary = True Then
For i = 1 To myFileStream.Length
strContent += myFileStream.ReadByte.ToString + " "
Next
Else
myStreamReader = New StreamReader(myFileStream)
strContent = myStreamReader.ReadToEnd
End If
myFileStream.Flush()
myFileStream.Close()
Return strContent
Catch ex As IOException
Console.WriteLine(ex.Message)
End Try
End Function
Private Shared Sub SerializeSoap(ByVal myClsSerializable As ClsSerializable)
Dim myFileStream As FileStream
Dim myBFormatter As SoapFormatter = New SoapFormatter()
Try
myFileStream = New FileStream("test.dat", FileMode.Create, FileAccess.Write)
myBFormatter.Serialize(myFileStream, myClsSerializable)
myFileStream.Flush()
myFileStream.Close()
Catch ex As Exception
Console.WriteLine(ex.Message)
End Try
End Sub
End Class
<Serializable()> _
Public Class ClsSerializable
Implements ISerializable
Public intNumber As Integer = 1000
Public strMessage As String = "this is a string"
Public lngTest As Long
Public intArrayX(10) As Integer
Public intArrayY(10) As Integer
Public Sub New()
ChangeMmberValue()
End Sub
Public Sub GetObjectData _
(ByVal info As SerializationInfo, ByVal context As StreamingContext) _
Implements ISerializable.GetObjectData
info.AddValue("intNumber", intNumber)
info.AddValue("message", strMessage)
info.AddValue("intArrayX", intArrayX)
End Sub
Public Sub New _
(ByVal info As SerializationInfo, ByVal context As StreamingContext)
intNumber = CInt(info.GetValue("intNumber", intNumber.GetType))
strMessage = CStr(info.GetValue("message", strMessage.GetType))
intArrayX = info.GetValue("intArrayX", intArrayX.GetType)
End Sub
Public Sub ChangeMmberValue()
Dim i As Integer
For i = 0 To 9
intArrayX(i) = i * 100
Next i
intNumber = 2000
strMessage = "this is another string"
End Sub
End Class
開發者ID:VB程序員,項目名稱:System.Runtime.Serialization.Formatters.Soap,代碼行數:103,代碼來源:SoapFormatter.Deserialize