Hi,
Ich bin gerade am versuchen eine Binär Datei in ein Array zu laden und den Inhalt des Arrays wieder zurück in eine datei Speichern. Ich habe das zumindest hinbekommen das wenn ich eine datei lade, das die datei die ich speicher schonmal die richtige dateigröße hat ABER das problem ist nur, das in der neuen Datei keine Daten enthält. Also ich hänge quasi an der stelle wo die Daten in den Array geladen werden soll.
Momentan sieht mein Code folgendermaßen aus.
Datei Einlesen:
Datei Schreiben (Inhalt vom Array):
Wie gesagt, die neue Datei hat die gleiche größe wie das Original nur ohne Inhalt vom Original da ich die Original Datei nicht verändern möchte.
Gruß Micha
Lösung:
Ich bin gerade am versuchen eine Binär Datei in ein Array zu laden und den Inhalt des Arrays wieder zurück in eine datei Speichern. Ich habe das zumindest hinbekommen das wenn ich eine datei lade, das die datei die ich speicher schonmal die richtige dateigröße hat ABER das problem ist nur, das in der neuen Datei keine Daten enthält. Also ich hänge quasi an der stelle wo die Daten in den Array geladen werden soll.
Momentan sieht mein Code folgendermaßen aus.
Datei Einlesen:
VB.NET-Quellcode
- Dim OFD As New OpenFileDialog
- Dim Data() As Byte
- Dim FileNameIn As String
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- OFD.Filter = "Alle Dateien (*.*)|*.*"
- If OFD.ShowDialog = DialogResult.OK Then
- Dim FS As New IO.FileStream(OFD.FileName, IO.FileMode.Open)
- Dim BR As New IO.BinaryReader(FS)
- ' ByteArray dimensionieren
- ReDim Data(FS.Length - 1)
- 'HIER KOMME ICH NICHT WEITER <-------------
- FS.Close()
- BR.Close()
- Else
- End If
- End Sub
Datei Schreiben (Inhalt vom Array):
Wie gesagt, die neue Datei hat die gleiche größe wie das Original nur ohne Inhalt vom Original da ich die Original Datei nicht verändern möchte.
Gruß Micha
Lösung:
VB.NET-Quellcode
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- OFD.Filter = "Binärdatei (*.bin)|*.bin"
- If OFD.ShowDialog = DialogResult.OK Then
- Dim FS As New IO.FileStream(OFD.FileName, IO.FileMode.Open)
- Dim BR As New IO.BinaryReader(FS)
- ' ByteArray dimensionieren
- ReDim Data(FS.Length - 1)
- Data = BR.ReadBytes(FS.Length) '<---------- So funktionierts :)
- FS.Close()
- BR.Close()
- Else
- End If
- End Sub
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „MichaSDL0403“ ()