Differenze tra le versioni di "Scrivere i valori contenuti da un file in un'area riservata di memoria"

Da Gambas-it.org - Wikipedia.
Riga 27: Riga 27:
 
   
 
   
 
   
 
   
  <FONT Color=gray>' ''Viene liberata la memoria precedentemente allocata, e chiuso il flusso:''</font>
+
  <FONT Color=gray>' ''Viene liberata la memoria precedentemente allocata e chiuso il flusso:''</font>
 
   Free(p)
 
   Free(p)
 
   st.Close
 
   st.Close
 
   
 
   
 
  '''End'''
 
  '''End'''

Versione delle 06:57, 17 feb 2015

Per scrivere i valori contenuti all'interno di un'area riservata di memoria puntata da una variabile di tipo Puntatore, si procederà innanzitutto a leggere il file e ad assegnare i dati letti in una variabile di tipo Stringa. Successivamente si provvederà a scrivere mediante i Memory Stream i valori, contenuti dalla predetta variabile Stringa, nell'area di memoria allocata.


Mostriamo un semplice esempio:

Public Sub Main()

 Dim fl As File
 Dim s As String
 Dim p As Pointer
 Dim st As Stream

  fl = Open "/percorso/del/file/da/leggere" For Read
  Read #fl, s, -256
  fl.Close

' Viene allocata una quantità di memoria sufficiente a contenere i dati del file:
  p = Alloc(Lof(fl))

  st = Memory p For Write

' Si procede a scrivere i dati del file attualmente contenuti dalla variabile Stringa:
  Write #st, s

' Qui vengono poste le istruzioni che utilizzano la memoria allocata.
  ......
  ......


' Viene liberata la memoria precedentemente allocata e chiuso il flusso:
  Free(p)
  st.Close

End