Differenze tra le versioni di "Scrivere all'interno di un file di testo"
Riga 12: | Riga 12: | ||
Dim fl As File | Dim fl As File | ||
+ | fl = Open "<FONT Color=gray>''/percorso/del/file/di/testo''</font>" For Write <FONT color=#B22222>Append</font> | ||
− | + | Write #fl, "testo da accodare al file" | |
− | + | fl.Close | |
− | |||
− | |||
'''End''' | '''End''' | ||
Riga 27: | Riga 26: | ||
Dim percorsoFile As String | Dim percorsoFile As String | ||
− | |||
− | |||
− | |||
− | <FONT color=gray>' ''Il nuovo file di testo salvato è dato dal suo testo iniziale | + | percorsoFile = "<FONT Color=gray>''/percorso/del/file/di/testo''</font>" |
− | + | ||
− | + | <FONT color=gray>' ''Il nuovo file di testo salvato è dato dal suo testo iniziale più il testo da aggiungervi alla fine:''</font> | |
+ | File.Save(percorsoFile, File.Load(percorsoFile & "testo da accodare al file.") | ||
'''End''' | '''End''' | ||
− | |||
Riga 47: | Riga 43: | ||
Dim fl As File | Dim fl As File | ||
− | + | fl = Open "<FONT Color=gray>''/percorso/del/file/di/testo''</font>" For Write | |
− | |||
<FONT color=gray>' ''Impostiamo il puntatore al 10° byte all'interno del file:''</font> | <FONT color=gray>' ''Impostiamo il puntatore al 10° byte all'interno del file:''</font> |
Versione delle 07:15, 18 mag 2023
In questa pagina prenderemo in considerazione il caso in cui si intende scrivere all'interno di un file di testo già esistente.
Indice
Aggiungere dati alla fine del file
Per scrivere ulteriori dati alla fine del file di testo, si potrà aprire con l'istruzione Open il file in scrittura aggiungendo anche la parola Append, oppure utilizzare il metodo .Save() della Classe File.
Apertura del file in scrittura e con Append
Mostriamo un codice esemplificativo, con il quale viene aperto un file di testo in scrittura e, per accodarvi dei dati, viene aggiunta la parola Append:
Public Sub Main() Dim fl As File fl = Open "/percorso/del/file/di/testo" For Write Append Write #fl, "testo da accodare al file" fl.Close End
Uso di File.Save()
Utilizzando il metodo Save() della Classe File,
Public Sub Main() Dim percorsoFile As String percorsoFile = "/percorso/del/file/di/testo" ' Il nuovo file di testo salvato è dato dal suo testo iniziale più il testo da aggiungervi alla fine: File.Save(percorsoFile, File.Load(percorsoFile & "testo da accodare al file.") End
Sostituzione di alcuni dati
Per effettuare la sostituzione di alcuni dati stringa presenti nel file di testo con altri nuovi, bisognerà individuare la posizione iniziale del primo byte da sostituire nel file medesimo; quindi far cominciare la scrittura dei nuovi dati da quella posizione.
L'individuazione della posizione all'interno del file per la scrittura viene effettuata con l'istruzione Seek.
Esempio:
Public Sub Main() Dim fl As File fl = Open "/percorso/del/file/di/testo" For Write ' Impostiamo il puntatore al 10° byte all'interno del file: Seek #fl, 9 Write #fl, "nuovo testo in sostituzione del vecchio" fl.Close End
Aggiungere una riga ad un file
Prendiamo ora in considerazione il caso in cui si intende aggiungere una riga all'interno (ossia nel mezzo fra le altre righe già esistenti) di un file di testo, composto da più righe di testo.
La riga si contraddistingue, oltre per il testo in sé, soprattutto per il carattere non stampabile di "nuova riga a capo", posto ovviamente alla fine dei dati che costituiscono la riga medesima.
Non esiste attualmente in Gambas un'istruzione per aggiungere una riga all'interno (ossia, come già detto, nel mezzo fra le altre righe già esistenti) di un file di testo. Pertanto, tale risultato andrà conseguito attraverso l'uso di altre risorse, ed in particolare con le funzioni per la gestione delle stringhe caricando preliminarmente i dati del file in una variabile di tipo Stringa.