Advertisement
NAK

Serialization BinaryFormatter (VB.NET)

NAK
Dec 1st, 2013
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VB.NET 2.64 KB | None | 0 0
  1. Imports System.IO
  2. Imports System.Collections
  3. Imports System.Runtime.Serialization.Formatters.Binary
  4. Imports System.Runtime.Serialization
  5.  
  6. Module Module1
  7.  
  8.     Sub Main()
  9.         While True
  10.             Console.WriteLine("s=serialize, r=read:")
  11.             Select Case Console.ReadLine()
  12.                 Case "s"
  13.  
  14.                     Dim EmployeeList1 = New List(Of Employee)()
  15.  
  16.                     ' create some objects adding them to a List
  17.                     EmployeeList1.Add(New Employee(1, "Elenor", "Scheller"))
  18.                     EmployeeList1.Add(New Employee(2, "Kaila", "Wilburn"))
  19.                     EmployeeList1.Add(New Employee(3, "Shea", "Wallen"))
  20.                     EmployeeList1.Add(New Employee(4, "Elliot", "Shaffer"))
  21.                     EmployeeList1.Add(New Employee(5, "Dominica", "Charney"))
  22.  
  23.                     Try
  24.                         Using stream As New FileStream("data.bin", FileMode.Create)
  25.  
  26.                             ' create BinaryFormatter
  27.                             Dim bin = New BinaryFormatter()
  28.                             ' serialize the collection (EmployeeList1) to file (stream)
  29.                             bin.Serialize(stream, EmployeeList1)
  30.  
  31.                         End Using
  32.  
  33.                     Catch ex As Exception
  34.                     End Try
  35.  
  36.                 Case "r"
  37.                     Try
  38.                         Using stream As New FileStream("data.bin", FileMode.Open)
  39.  
  40.                             ' create BinaryFormatter
  41.                             Dim bin = New BinaryFormatter()
  42.                             ' deserialize the collection (Employee) from file (stream)
  43.                             Dim EmployeeList2 = DirectCast(bin.Deserialize(stream), List(Of Employee))
  44.  
  45.                             ' display the results
  46.                             For Each Employee In EmployeeList2
  47.                                 Console.WriteLine("{0}, {1}, {2}",
  48.                                     Employee.id,
  49.                                     Employee.fName,
  50.                                     Employee.sName)
  51.                             Next
  52.  
  53.                         End Using
  54.                     Catch ex As Exception
  55.                     End Try
  56.  
  57.             End Select
  58.         End While
  59.  
  60.     End Sub
  61.  
  62.     ' The object we are going to Serializing/De-serializing
  63.     <Serializable()>
  64.     Class Employee
  65.         Property id As Integer
  66.         Property fName As String
  67.         Property sName As String
  68.  
  69.         Public Sub New(i As Integer, f As String, s As String)
  70.             id = i
  71.             fName = f
  72.             sName = s
  73.         End Sub
  74.     End Class
  75.  
  76. End Module
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement