Eliminare un byte all'interno di un file binario
Vai alla navigazione
Vai alla ricerca
Se vi è necessità di eliminare un byte all'interno di un file binario, è possibile adottare la seguente procedura, che può essere suddivisa in tre fasi:
- lettura dei dati presenti nel file;
- eliminazione del byte prescelto;
- riscrittura ex novo del file senza il byte eliminato:
Public Sub Button1_Click()
Dim fl As File
Dim g, j As Byte
Dim gg As New Byte[]
Dim i As Integer
fl = Open "percorso_del_file" For Read
' leggiamo il file interamente (oppure, se conosciamo
' l'esatta posizione del byte da elimanre, fino a quel byte da eliminare):
While Not Eof(fl)
Read #fl, g
' Inseriamo ciascun byte del file in una variabile array di tipo Byte:
gg.Add(g)
Wend
fl.Close
' Rimuoviamo il byte indicandone la relativa posizione nell'indice array:
gg.Remove(i)
fl = Open percorso For Create
' Riscriviamo ex novo il file leggendo dalla variabile array,:
' priva ormai del byte che dovevamo eliminare:
For j = 0 To gg.Max
g = gg[j]
Write #fl, g As Byte
Next
fl.Close
End