Raccogliere solo alcune righe all'interno di un file di testo
Da Gambas-it.org - Wikipedia.
Versione del 11 set 2022 alle 15:26 di Vuott (Discussione | contributi)
Mostreremo di seguito un possibile algoritmo per raccogliere da un file di testo solo alcune righe, individuando la prima riga da raccogliere non da un numero d'indice (ad esempio: la 20a riga), bensì dal proprio testo.
Uso dell'operatore "Begins"
In questo caso utilizzeremo l'operatore "Begins" per filtrare le righe da raccogliere.
Come esempio prederemo dal file header /usr/include/alsa/mixer.h soltanto le righe che iniziano con i caratteri "typedef ":
Public Sub Main() Dim fl As File Dim s As String fl = Open "/usr/include/alsa/mixer.h" For Read Repeat ' Legge ogni riga del file di testo: s = fl.ReadLine() ' Raccoglie solo le righe che cominciano con "typedef": If s Begins "typedef" Then Print s ' Quando si raggiunge la fine del file di testo, si esce dal ciclo: Until fl.EndOfFile fl.Close End
Uso dell'operatore "Ends"
In questo caso utilizzeremo l'operatore "Ends" per filtrare le righe da raccogliere.
Come esempio prederemo dal file header /usr/include/alsa/mixer.h soltanto le righe che terminano con i caratteri "value); ":
Public Sub Main() Dim fl As File Dim s As String fl = Open "/usr/include/alsa/mixer.h" For Read Repeat ' Legge ogni riga del file di testo: s = fl.ReadLine() ' Raccoglie solo le righe che terminano con "value);": If s Ends "value);" Then Print s ' Quando si raggiunge la fine del file di testo, si esce dal ciclo: Until fl.EndOfFile fl.Close End