Differenze tra le versioni di "Scrivere in un file i dati presenti in un vettore di tipo Byte"

Da Gambas-it.org - Wikipedia.
Riga 2: Riga 2:
  
  
===1°===
+
==Mediante "Open... For Create"==
Nei seguenti casi:
+
Mostriamo un esempio che fa uso dell'istruzione "Write" per scrivere in un file i dati presenti in un vettore di tipo "Byte[]":
* vettore con numero di elementi non specificato;
 
* vettore incorporato con numero di elementi specificato;
 
sono possibili le seguenti due modalità di scrittura dei dati nel file.
 
 
 
====Mediante ''Open... For Write''====
 
I dati presenti in un vettore, al quale siano stati precedentemente incrementati in modo dinamico i propri elementi con assegnazione contemporanea di un valore, possono essere scritti in un file mediante la funzione "''Write''", ad esempio così:
 
 
  '''Public''' Sub Main()
 
  '''Public''' Sub Main()
 
   
 
   
   Dim vettore As New Byte[]
+
   Dim vettore As Byte = [&11, &22, &33, &44, &55, &66, &77, &88]
   Dim j As Byte
+
   Dim b As Byte
 
   Dim fl As File   
 
   Dim fl As File   
 
    
 
    
 +
  fl = Open "<FONT Color=gray>''/percorso/del/file/da/scrivere''</font>" For Create
 
   
 
   
  fl = Open "<FONT Color=gray>''/percorso/del/file/da/scrivere''</font>" For Create
+
  For b = 0 To vettore.Max
 
  For j = 0 To
 
<FONT Color=gray>' ''Come esempio viene inserito il valore di "j" nell'elemento corrente della variabile vettoriale "vettore":''</font> 
 
    vettore[j] = j
 
 
 
 
  <FONT Color=gray>' ''Viene scritto il file:''</font>
 
  <FONT Color=gray>' ''Viene scritto il file:''</font>
    <FONT Color=#B22222>Write</font> #fl, vettore[j] As Byte   
+
    <FONT Color=#B22222>Write</font> #fl, vettore[b] As Byte   
  Next
+
  Next
 
 
  fl.Close
 
 
 
'''End'''
 
 
 
 
 
Ugualmente possono essere scritti in un file i dati presenti in un vettore ''incorporato'' che ha, dunque, già dichiarato il numero degli elementi che lo compongono:
 
Private vettore[4] As Byte
 
 
 
'''Public''' Sub Main()
 
 
  Dim j As Byte
 
  Dim fl As File 
 
 
 
 
  fl = Open "<FONT Color=gray>''/percorso/del/file/da/scrivere''</font>" For Create
 
 
   
 
   
  For j = 0 To 3  
+
  fl.Close
<FONT Color=gray>' ''Come esempio viene inserito il valore di "j" nell'elemento corrente della variabile vettoriale "vettore":''</font>
 
    vettore[j] = j
 
 
 
<FONT Color=gray>' ''Viene scritto il file:''</font> 
 
    <FONT Color=#B22222>Write</font> #fl, vettore[j] As Byte 
 
  Next 
 
 
 
  fl.Close
 
 
    
 
    
 
  '''End'''
 
  '''End'''
  
  
====Mediante il metodo ".Write()" del vettore====
+
==Uso del Metodo ".Write()" del vettore==
 
In entrambi i casi si potrà utilizzare anche il metodo ''Write()'' della variabile vettoriale di tipo Byte[]:
 
In entrambi i casi si potrà utilizzare anche il metodo ''Write()'' della variabile vettoriale di tipo Byte[]:
 
  '''Public''' Sub Main()
 
  '''Public''' Sub Main()
 
   
 
   
   Dim vettore As New Byte[] 
+
   Dim vettore As Byte = [&11, &22, &33, &44, &55, &66, &77, &88]
  Dim j As Byte
 
  Dim fl As File 
 
 
 
 
  fl = Open "<FONT Color=gray>''/percorso/del/file/da/scrivere''</font>" For Create
 
 
  For j = 0 To 3 
 
<FONT Color=gray>' ''Come esempio viene inserito il valore di "j" nell'elemento corrente della variabile vettoriale "vettore":''</font> 
 
    vettore[j] = j
 
  Next
 
 
<FONT Color=gray>' ''Viene scritto il file:''</font> 
 
  vettore<FONT Color=#B22222>.Write(fl, 0, vettore.Count)</font>
 
 
 
  fl.Close
 
 
 
'''End'''
 
 
 
 
 
Private vettore[4] As Byte
 
 
 
'''Public''' Sub Main()
 
 
  Dim j As Byte
 
 
   Dim fl As File   
 
   Dim fl As File   
 
 
 
  fl = Open "<FONT Color=gray>''/percorso/del/file/da/scrivere''</font>" For Create
 
 
  For j = 0 To 3 
 
<FONT Color=gray>' ''Come esempio viene inserito il valore di "j" nell'elemento corrente della variabile vettoriale "vettore":''</font> 
 
    vettore[j] = j
 
  Next
 
 
    
 
    
<FONT Color=gray>' ''Viene scritto il file:''</font> 
+
  fl = Open "<FONT Color=gray>''/percorso/del/file/da/scrivere''</font>" For Create
  vettore<FONT Color=#B22222>.Write(fl, 0, vettore.Count)</font>
 
 
 
  fl.Close
 
 
 
'''End'''
 
 
 
 
 
 
 
===2°===
 
Nei casi, invece, di:
 
* vettore ordinario con numero di elementi già dichiarati;
 
* vettore con assegnazione esplicita di valori a ciascun elemento;
 
sarà necessario utilizzare esclusivamente il metodo ''Write()'' della variabile vettoriale di tipo Byte[]:
 
'''Public''' Sub Main()
 
 
  Dim fl As File
 
  Dim vettore As Byte[4]
 
 
 
  fl = Open "''/percorso/del/file/da/scrivere''" For Create
 
 
  For j = 0 To 3 
 
<FONT Color=gray>' ''Come esempio viene inserito il valore di "j" nell'elemento corrente della variabile vettoriale "vettore":''</font>
 
    vettore[j] = j
 
  Next
 
 
   
 
   
 
  <FONT Color=gray>' ''Viene scritto il file:''</font>   
 
  <FONT Color=gray>' ''Viene scritto il file:''</font>   
  vettore<FONT Color=#B22222>.Write(fl, 0, vettore.Count)</font>
+
  vettore<FONT Color=#B22222>.Write(fl, 0, vettore.Count)</font>
 
 
  fl.Close
 
 
 
'''End'''
 
 
 
 
 
'''Public''' Sub Main()
 
 
  Dim fl As File
 
  Dim vettore As Byte[] = [11, 22, 33, 44]
 
 
 
   
 
   
  fl = Open "''/percorso/del/file/da/scrivere''" For Create
+
  fl.Close
 
    vettore<FONT color=#B22222>.Write(</font>fl, 0, vettore.Count<FONT color=#B22222>)</font>
 
 
  fl.Close
 
 
   
 
   
 
  '''End'''
 
  '''End'''
 
 
Se riguardo al 2° gruppo di casi si adoperasse l'istruzione "''Open... For Write''", potremmo notare nei primi tre byte del file scritto i valori ''41 02 04 ....'', i quali stanno a rappresentare:
 
41 è l'Array (il carattere 'A' sta appunto per Array).
 
02 significa Byte.
 
04 è il numero della dimensione dell'Array.
 
e dopo tali tre valori seguono i byte veri e propri del contenuto del vettore.
 

Versione delle 19:30, 31 ago 2022

Se si intende scrivere in un file dati contenuti in una variabile vettoriale di tipo "Byte[]", sarà assolutamente necessario tenere conto del vettore.


Mediante "Open... For Create"

Mostriamo un esempio che fa uso dell'istruzione "Write" per scrivere in un file i dati presenti in un vettore di tipo "Byte[]":

Public Sub Main()

 Dim vettore As Byte = [&11, &22, &33, &44, &55, &66, &77, &88]
 Dim b As Byte
 Dim fl As File  
  
 fl = Open "/percorso/del/file/da/scrivere" For Create

 For b = 0 To vettore.Max
' Viene scritto il file:
   Write #fl, vettore[b] As Byte  
 Next

fl.Close
 
End


Uso del Metodo ".Write()" del vettore

In entrambi i casi si potrà utilizzare anche il metodo Write() della variabile vettoriale di tipo Byte[]:

Public Sub Main()

 Dim vettore As Byte = [&11, &22, &33, &44, &55, &66, &77, &88]
 Dim fl As File  
 
 fl = Open "/percorso/del/file/da/scrivere" For Create

' Viene scritto il file:  
 vettore.Write(fl, 0, vettore.Count)

 fl.Close

End