Voor het niveau van de TS lijkt me dit makkelijker dan XML files:
Demo:
Maak een form met 4 textboxes (text1 t/m text4) en 2 buttons erop (Command1 en Command2)
Plak de volgende code:
Visual Basic 6:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
| Option Explicit
Private Type myData
Name As String * 200
Height As Long
Width As Long
Texture As String * 100
End Type
Private Sub Command1_Click()
Dim strFilename As String
strFilename = InputBox("Geef een bestandsnaam om op te slaan", "Opslaan data", "C:\test.dat")
SaveData strFilename
End Sub
Private Sub Command2_Click()
Dim strFilename As String
strFilename = InputBox("Geef een bestandsnaam om op te openen", "Openen data", "C:\test.dat")
LoadData strFilename
End Sub
Private Sub Form_Load()
Text1.Text = "Testnaam"
Text2.Text = "10"
Text3.Text = "20"
Text4.Text = "Testbedekking"
Command1.Caption = "Save"
Command2.Caption = "Load"
End Sub
Private Sub LoadData(strFilename As String)
Dim tmpData As myData
Dim ff As Integer
If Len(Dir(strFilename, vbNormal)) > 0 Then
ff = FreeFile
Open strFilename For Binary As #ff Len = Len(tmpData)
Get #ff, 1, tmpData
Close #ff
Text1.Text = tmpData.Name
Text2.Text = tmpData.Height
Text3.Text = tmpData.Width
Text4.Text = tmpData.Texture
Else
MsgBox "File not found!", vbCritical + vbOKOnly, "Error opening file"
End If
End Sub
Private Sub SaveData(strFilename As String)
Dim tmpData As myData
Dim ff As Integer
tmpData.Name = Text1.Text
tmpData.Height = Text2.Text
tmpData.Width = Text3.Text
tmpData.Texture = Text4.Text
ff = FreeFile
Open strFilename For Binary As #ff Len = Len(tmpData)
Put #ff, 1, tmpData
Close #ff
End Sub |
Dit voorbeelt toont:
• Het gebruik van UDT's (User defined types)
• Het openen en sluiten van een file handle (Freefile, Open en Close)
• Het lezen en schrijven van binary files m.b.v. een UDT (Get en Put)
• Het controleren of een file bestaat (LoadData sub)
Dit voorbeeld toont
niet:
• Dat er meerdere records in 1 bestand kunnen
@TS: Record 1 wordt in dit voorbeeld altijd ge-get en ge-put, maar je kan dus ook een ander record nummer gebruiken om zo meerdere berekeningen in 1 bestand op te slaan
• Foutafhandeling
• Invoer controle (er wordt niet gecontroleerd op geldige input)
• Vele andere basisprincipes
Besef overigens goed dat deze manier ook zat nadelen kent, waaronder problemen met backwards compatibility van je software als je je UDT verandert. In zo'n geval (en overigens in de meeste gevallen) is XML een betere/mooiere oplossing. Maar gezien het niveau van TS lijkt me dat nog even "out of reach"

(NOFI natuurlijk!)
Maar TS moet hier makkelijk mee op weg kunnen. Overigens bevat de VB6 help functie en MSDN hier uitgebreide documentatie over...
...en weer kan RobIII het niet laten complete voorbeelden voor te kauwen 
[
Voor 33% gewijzigd door
RobIII op 28-12-2003 17:27
]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij