# *.dat Datei öffnen und auslesen



## calvin65 (13. November 2005)

Hallo Leute,

ich versuche eine *.dat - Datei zu öffnen, auszulesen und dann wieder, nach Veränderungen, zu speichern.

Mein Problem jedoch ist, dass in der Datei auch "freie Stellen", also "00" im Hex-Code. Ich habs mal mit einem Hex-Editor geöffnet:

00 0000 0000 0100 FFFF 0000 0000 0000 1400 ................
10 7A75 7465 7374 656E 6465 7200 7200 0000 zutestender.r...
20 0000 0000 0000 0000 0000 3220 2F00 0000 ..........2 /...

Ich möchte diese Datei also öffnen, einlesen - und dabei die "freien Stellen" beibehalten - verändern und wieder speichern - mit "freien Stellen".

Mein Problem ist jetzt aber das die "freien Stellen" immer entfernt werden, wenn ich den Inhalt auslese und Zeichen für Zeichen in ein Array schreibe. Bisher hab ichs so versucht:


```
Private Sub File1_Click()
   Dim txtFile As Integer, zeichen As String, file As String, anzahl
   Dim zeichen2() As variant, i
   
   txtFile = FreeFile
   anzahl = 1000
   ReDim zeichen2(anzahl)
   
   file = File1.Path & "\" & File1.FileName
  
   Open file For Input As #txtFile
   i=0
   Do While Not EOF(txtFile)
      zeichen2(i)= Input(1, txtFile)
      i = i + 1
   Loop
   Close #txtFile

   frmStart.Text1.Text = (zeichen2(16))
   For i = 0 To anzahl
      zeichen = zeichen & zeichen2(i)
   Next
   frmStart.txtName.Text = zeichen
End Sub
```

Das "zutestender" soll dabei verändert -jetzt erstmal nur angezeigt- werden, die Startposition ist bekannt.
Wäre schön wenn mir da jemand helfen könnte.

MfG Calvin

Edit: Die "freien Stellen" sind wohl NULL-Werte. Allerdings brauche ich diese halt auch, als Abstandshalter sozusagen.


----------

