Differenze tra le versioni di "Azzerare un gruppo di byte in un file"
Da Gambas-it.org - Wikipedia.
(3 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 1: | Riga 1: | ||
− | Poniamo il caso di voler azzerare all'interno di un file i primi quattro byte | + | Poniamo il caso di voler azzerare all'interno di un file i primi quattro byte. |
+ | |||
+ | Tale operazione potrà essere compiuta con un ciclo operando sul file, come fosse testo, con alcune funzioni sulle stringhe: | ||
+ | '''Public''' Sub Main() | ||
+ | |||
+ | Dim b As Byte | ||
+ | |||
+ | For b = 1 To 4 | ||
+ | |||
+ | File.Save("''/percorso/del/file''", Replace(File.Load("''/percorso/del/file''"), Chr(Asc(File.Load("''/percorso/del/file''"), b)), Chr(0))) | ||
+ | |||
+ | Next | ||
+ | |||
+ | '''End''' | ||
+ | |||
− | + | oppure senza compiere alcun ciclo: | |
'''Private''' buff[4] As Byte | '''Private''' buff[4] As Byte | ||
− | '''Public''' Sub | + | '''Public''' Sub Main() |
Dim fl As File | Dim fl As File | ||
Dim b As Byte | Dim b As Byte | ||
− | fl = Open "''/ | + | fl = Open "''/percorso/del/file''" For Write |
− | |||
− | |||
Write #fl, buff As Byte[] | Write #fl, buff As Byte[] | ||
Riga 23: | Riga 35: | ||
− | + | Senza ciclo si potrà anche adoperare direttamente il metodo “''.Write''” della Classe ''byte[]'': | |
− | '''Public''' Sub | + | '''Public''' Sub Main() |
Dim fl As File | Dim fl As File | ||
Dim buff As New Byte[4] | Dim buff As New Byte[4] | ||
− | fl = Open "''/ | + | fl = Open "''/percorso/del/file''" For Write |
buff.<FONT color=#B22222>Write</font>(fl) | buff.<FONT color=#B22222>Write</font>(fl) |
Versione attuale delle 00:29, 22 gen 2014
Poniamo il caso di voler azzerare all'interno di un file i primi quattro byte.
Tale operazione potrà essere compiuta con un ciclo operando sul file, come fosse testo, con alcune funzioni sulle stringhe:
Public Sub Main() Dim b As Byte For b = 1 To 4 File.Save("/percorso/del/file", Replace(File.Load("/percorso/del/file"), Chr(Asc(File.Load("/percorso/del/file"), b)), Chr(0))) Next End
oppure senza compiere alcun ciclo:
Private buff[4] As Byte Public Sub Main() Dim fl As File Dim b As Byte fl = Open "/percorso/del/file" For Write Write #fl, buff As Byte[] fl.Close End
Senza ciclo si potrà anche adoperare direttamente il metodo “.Write” della Classe byte[]:
Public Sub Main() Dim fl As File Dim buff As New Byte[4] fl = Open "/percorso/del/file" For Write buff.Write(fl) fl.Close End