Line Input

Da Gambas-it.org - Wikipedia.

Line Input legge all'interno di un file di testo un'intera riga di caratteri non interrotta da un carattere non stampabile di "ritorno a capo" (ossia un byte avente valore x0A (Line feed character). Quindi la riga sarà letta tutta quanta fino al carattere non stampabile di ritorno a capo.

Ponendo eventualmente la funzione Seek, si va a leggere dal byte puntato da Seek sino al primo dato avente valore x0A.


Esempio di lettura con Line Input

Se per esempio il file di testo è così strutturato con due righe:

Line Input legge
all'interno di un file.

ed andiamo a leggere con Line Input

Public Sub Button1_Click()

 Dim fl As File
 Dim s As String


  fl = Open "/percorso/del/mio/file" For Input

  Line Input #fl, s

  Print s

  fl.Close

End

sarà letta la sola intera prima riga del file di testo: Line Input legge .
Infatti, se esaminiamo il file con un editor esadecimale, noteremo che immediatamente dopo i byte, che rappresentano i caratteri della parola "legge", è presente il carattere non stampabile esadecimale 0A (Line feed character), il quale rappresenta appunto il carattere escape di "ritorno a capo".


Esempio di lettura dell'intero file con Line Input

Volendo, invece, leggere tutte le righe del file di testo, useremo ovviamente un ciclo:

Public Sub Button1_Click()

 Dim fl As File
 Dim s As String


  fl = Open "/percorso/del/mio/file" For Input

  While Not fl(Eof)   ' Fin tanto che non si è giunti alla fine dei dati del file...
    Line Input #fl, s   ' ...legge un'intera riga
    Print s
  Wend

  fl.Close

End