Differenze tra le versioni di "Input"

Da Gambas-it.org - Wikipedia.
Riga 6: Riga 6:
 
  '''Public''' Sub Button1_Click()
 
  '''Public''' Sub Button1_Click()
 
   
 
   
Dim f As File
+
  Dim f As File
Dim a$ As String
+
  Dim a$ As String
 
 
   
 
   
   f = Open "percorso_del_file_da_aprire" For Input
+
   f = Open "<FONT color=gray>''/percorso/del/file/da/aprire''</font>" For Input
 
   
 
   
 
   <FONT color=#B22222>Input</font> #f, a$
 
   <FONT color=#B22222>Input</font> #f, a$
Riga 21: Riga 20:
  
 
Con ''Input'' possiamo inserire anche più variabili, ove caricare i valori, ossia le varie stringhe presenti nel file di testo e separate ciascuna dall'altra da uno spazio o da un carattere di "nuova riga":
 
Con ''Input'' possiamo inserire anche più variabili, ove caricare i valori, ossia le varie stringhe presenti nel file di testo e separate ciascuna dall'altra da uno spazio o da un carattere di "nuova riga":
  '''Public''' Sub Button1_Click()
+
  '''Public''' Sub Main()
 
   
 
   
 
   Dim f As File
 
   Dim f As File
 
   Dim a$, b$, c$ As String
 
   Dim a$, b$, c$ As String
 
 
    
 
    
   f = Open "percorso_del_file_da_aprire" For Input
+
   f = Open "<FONT color=gray>''/percorso/del/file/da/aprire''</font>" For Input
 
   
 
   
 
   <FONT color=#B22222>Input</font> #f, a$, b$, c$
 
   <FONT color=#B22222>Input</font> #f, a$, b$, c$
Riga 38: Riga 36:
  
 
Volendo usare un ciclo ''For'', si potrà, per leggere ogni stringa, usare invece ovviamente una sola variabile stringa:
 
Volendo usare un ciclo ''For'', si potrà, per leggere ogni stringa, usare invece ovviamente una sola variabile stringa:
  '''Public''' Sub Button1_Click()
+
  '''Public''' Sub Main()
 
   
 
   
 
   Dim f As File
 
   Dim f As File
Riga 44: Riga 42:
 
   Dim j As Byte
 
   Dim j As Byte
 
   
 
   
+
   f = Open "<FONT color=gray>''/percorso/del/file/da/aprire''</font>" For Input
   f = Open "percorso_del_file_da_aprire" For Input
 
 
   
 
   
 
   For j = 0 to 2
 
   For j = 0 to 2
Riga 60: Riga 57:
  
 
Possiamo usare, per compiere il ciclo, ovviamente anche "''While......Wend''":
 
Possiamo usare, per compiere il ciclo, ovviamente anche "''While......Wend''":
  '''Public''' Sub Button1_Click()
+
  '''Public''' Sub Main()
 
   
 
   
 
   Dim f As File
 
   Dim f As File
 
   Dim a$ As String
 
   Dim a$ As String
 
 
 
   
 
   
   f = Open "percorso_del_file_da_aprire" For Input
+
   f = Open "<FONT color=gray>''/percorso/del/file/da/aprire''</font>" For Input
 
   
 
   
 
   While Not Eof(f)
 
   While Not Eof(f)
Riga 78: Riga 74:
  
 
Con ''Input'' possiamo usare anche la funzione ''Seek'' per spostare il puntatore all'interno del File di testo:
 
Con ''Input'' possiamo usare anche la funzione ''Seek'' per spostare il puntatore all'interno del File di testo:
  '''Public''' Sub Button1_Click()
+
  '''Public''' Sub Main()
 
   
 
   
 
   Dim f As File
 
   Dim f As File
 
   Dim a$ As String
 
   Dim a$ As String
 
   
 
   
+
   f = Open "<FONT color=gray>''/percorso/del/file/da/aprire''</font>" For Input
   f = Open "percorso_del_file_da_aprire" For Input
 
 
   
 
   
 
   Seek #f, 3
 
   Seek #f, 3
Riga 98: Riga 93:
  
 
Se facciamo:
 
Se facciamo:
  '''Public''' Sub Button1_Click()
+
  '''Public''' Sub Main()
 
   
 
   
 
   Dim f As File
 
   Dim f As File
 
   Dim a$ As String
 
   Dim a$ As String
 
   
 
   
+
   f = Open "<FONT color=gray>''/percorso/del/file/da/aprire''</font>" For Input
   f = Open "percorso_del_file_da_aprire" For Input
 
 
   
 
   
 
   Seek #f, 12
 
   Seek #f, 12
Riga 113: Riga 107:
 
  '''End'''
 
  '''End'''
 
avremo in console:  ratto
 
avremo in console:  ratto
 +
 +
 +
===Uso di INPUT per far attendere la pressione del tasto "Invio"===
 +
L'istruzione ''Input'' può essere utile per porre il programma in attesa della pressione del tasto "Invio" della tastiera da parte dell'utente. In tal caso il programma proseguirà nel processo del proprio codice, solo quando l'utente avrà premuto il tasto "Invio" della tastiera.
 +
 +
Esempio pratico:
 +
'''Public''' Sub Main()
 +
 
 +
  Print "In attesa della pressione del tasto \"Invio\" della tastiera......"
 +
 
 +
  <FONT color=#B22222>Input</font>
 +
 
 +
  Print "E' stato premuto il tasto \"Invio\" della tastiera."
 +
 
 +
'''End'''

Versione delle 01:35, 14 ago 2020

Input legge le stringhe in un File di testo fino all'interruzione dello spazio o al carattere di "nuova linea" (ritorno a capo), e le immette ciascuna in una propria variabile.


Esempio.
Poniamo di avere un file, creato con un editor di testo, contenente queste tre parole: gallo gatto ratto. Leggendo con Input avremo:

Public Sub Button1_Click()

 Dim f As File
 Dim a$ As String

 f = Open "/percorso/del/file/da/aprire" For Input

 Input #f, a$

 Print a$

End

sarà letta soltanto la stringa "gallo", e sarà inserita nella variabile "a$".


Con Input possiamo inserire anche più variabili, ove caricare i valori, ossia le varie stringhe presenti nel file di testo e separate ciascuna dall'altra da uno spazio o da un carattere di "nuova riga":

Public Sub Main()

 Dim f As File
 Dim a$, b$, c$ As String
 
 f = Open "/percorso/del/file/da/aprire" For Input

 Input #f, a$, b$, c$

 Print a$, b$, c$

End

saranno lette: gallo gatto ratto.


Volendo usare un ciclo For, si potrà, per leggere ogni stringa, usare invece ovviamente una sola variabile stringa:

Public Sub Main()

 Dim f As File
 Dim a$ As String
 Dim j As Byte

 f = Open "/percorso/del/file/da/aprire" For Input

  For j = 0 to 2
   Input #f, a$
   Print a$
  Next

End

Avremo in console:
gallo
gatto
ratto


Possiamo usare, per compiere il ciclo, ovviamente anche "While......Wend":

Public Sub Main()

 Dim f As File
 Dim a$ As String

 f = Open "/percorso/del/file/da/aprire" For Input

  While Not Eof(f)
    Input #f, a$
    Print a$
  Wend

End


Con Input possiamo usare anche la funzione Seek per spostare il puntatore all'interno del File di testo:

Public Sub Main()

 Dim f As File
 Dim a$ As String

 f = Open "/percorso/del/file/da/aprire" For Input

  Seek #f, 3
   Input #f, a$

  Print a$

End

in console avremo: lo
La lettura anche con l'utilizzo della funzione Seek si arresterà al primo spazio, oppure al carattere ritorno a capo nuova riga, che incontrerà nel file di testo.


Se facciamo:

Public Sub Main()

 Dim f As File
 Dim a$ As String

 f = Open "/percorso/del/file/da/aprire" For Input

  Seek #f, 12
   Input #f, a$

  Print a$

End

avremo in console: ratto


Uso di INPUT per far attendere la pressione del tasto "Invio"

L'istruzione Input può essere utile per porre il programma in attesa della pressione del tasto "Invio" della tastiera da parte dell'utente. In tal caso il programma proseguirà nel processo del proprio codice, solo quando l'utente avrà premuto il tasto "Invio" della tastiera.

Esempio pratico:

Public Sub Main()
 
 Print "In attesa della pressione del tasto \"Invio\" della tastiera......"
 
 Input
 
 Print "E' stato premuto il tasto \"Invio\" della tastiera."
 
End