Public Class FChkBConFichero
Dim RutaYNombreCompletoDelFichero As String = "MisCheckBox.Dat"
Dim Fichero As System.IO.FileStream
Dim CantidadDeCheckBox As Integer = 10 ' Este es posible de hacer contar por el programma
Dim MisValoresDeLosCheckBox(CantidadDeCheckBox - 1) As Byte ' Indicios cambiados desde 0 hasta 9 para este ejemplo con 10 ChkBox.
Private Sub HacerTablaConCheckBox()
For C As Integer = 0 To CantidadDeCheckBox - 1
Dim NombreDelCheckBox As String = "CheckBox" & (C + 1) ' Supongo que los CheckBox se llaman "CheckBox" y estan numerotados desde 1 hasta CantidadDeCheckBox
Dim ChkB As CheckBox = Controls(NombreDelCheckBox)
MisValoresDeLosCheckBox(C) = IIf(ChkB.Checked, 49, 48) ' ASCII 48 es "0" y ASCII 49 es "1". Puedes utilizar ASCII 0 y ASCCI 1, entonces no estan visioble en NotePad.
Next
End Sub
' Si utiliza los caracteres ASCII 48 y 49, puedes los ver en el fichero con NotePad.
' Si utiliza los caracteres ASCII 0 y 1, el fichero parece vació.
Private Sub PonerCheckBoxConTabla()
For C As Integer = 0 To CantidadDeCheckBox - 1
Dim NombreDelCheckBox As String = "CheckBox" & (C + 1)
Dim ChkB As CheckBox = Controls(NombreDelCheckBox)
ChkB.Checked = IIf(MisValoresDeLosCheckBox(C) = 49, True, False) ' ASCII 48 es "0" y ASCII 49 es "1". Puedes utilizar ASCII 0 y ASCCI 1, entonces no estan visioble en NotePad.
Next
End Sub
Private Sub LeerTablaEnElFichero()
Fichero = New System.IO.FileStream(RutaYNombreCompletoDelFichero, System.IO.FileMode.Open, System.IO.FileAccess.Read)
Fichero.Read(MisValoresDeLosCheckBox, 0, CantidadDeCheckBox)
Fichero.Close()
End Sub
Private Sub EscribirTablaEnElFichero()
Fichero = New System.IO.FileStream(RutaYNombreCompletoDelFichero, System.IO.FileMode.Create, System.IO.FileAccess.Write)
Fichero.Write(MisValoresDeLosCheckBox, 0, CantidadDeCheckBox)
Fichero.Close()
End Sub
Private Sub BGrabar_Click(sender As Object, e As EventArgs) Handles BGrabar.Click
HacerTablaConCheckBox() ' Llenar con los valores actuales.
EscribirTablaEnElFichero() ' Grabar los valores actuales.
End Sub
Private Sub BCargar_Click(sender As Object, e As EventArgs) Handles BCargar.Click
LeerTablaEnElFichero() ' Leer los valores del fichero.
PonerCheckBoxConTabla() ' Poner los valores del fichero.
End Sub
End Class