Reading a sequential-access file
Imports System.IO
Imports System.Collections
Imports System.Windows.Forms
Imports System.Runtime.Serialization.Formatters.Binary
Imports System.Runtime.Serialization
Public Class MainClass
Public Shared Sub Main()
Dim formatter As BinaryFormatter = New BinaryFormatter()
Dim output As FileStream
Dim fileName As String = "test.dat"
Dim employee As Employee = New Employee("First Name", "Last Name")
Try
output = New FileStream(fileName,FileMode.OpenOrCreate, FileAccess.Write)
formatter.Serialize(output, employee)
output.Close()
Catch fileException As FileNotFoundException
Console.WriteLine("File Does Not Exits")
Catch serializableException As SerializationException
Console.WriteLine("Error Writing to File")
Catch formattingException As FormatException
Console.WriteLine("Invalid Format")
Catch e As IOException
Console.WriteLine("Cannot close file")
End Try
Dim input As FileStream
Dim reader As BinaryFormatter = New BinaryFormatter()
input = New FileStream(fileName, FileMode.Open,FileAccess.Read)
Try
Dim em As Employee = CType(reader.Deserialize(input), Employee)
Console.WriteLine(em)
Catch serializableException As SerializationException
input.Close()
Console.WriteLine("No more records in file")
End Try
End Sub
End Class
<Serializable()> Public Class Employee
Private firstName, lastName As String
Public Sub New(ByVal first As String, ByVal last As String)
firstName = first
lastName = last
End Sub
Public Overrides Function ToString() As String
Return firstName & " " & lastName
End Function
End Class
Related examples in the same category