Differenze tra le versioni di "Scrivere nella console (standard output) di Gambas"

Da Gambas-it.org - Wikipedia.
Riga 1: Riga 1:
Per scrivere nello ''standard output'' di un programma Gambas, ossia in pratica all'interno della console del'IDE di Gambas oppure nel Terminale nel quale sia stato lanciato il nostro programma Gambas ''a linea di comando'', si potranno adottare (come il classico ''Print'') le seguenti modalità che mostreremo nel seguente esempio:
+
Per scrivere nello ''standard output'' di un programma Gambas, ossia in pratica all'interno della console del'IDE di Gambas oppure nel Terminale nel quale sia stato lanciato il nostro programma Gambas ''a linea di comando'', si potranno adottare le seguenti modalità.
'''Private''' fl As File
+
 
'''Private''' fd As File
+
 
'''Private''' pts As File
+
 
 +
===Scrivere con "''Print''"===
 +
Si potrà utilizzare la classica istruzione ''Print'':
 +
  '''Public''' Sub Main()
 
   
 
   
 +
  <FONT color=B22222>Print</font> "Scrive con il 'Print'"
 
   
 
   
 +
'''End'''
 +
 +
 +
===Scrivere con "''File.Save''"===
 +
Si potrà utilizzare il metodo "''File.Save''" su diversi file particolari, che possono essere:
 +
* il file-device ''/dev/stdout'';
 +
* il file-device ''/dev/tty'';
 +
* il file-descriptor ''/proc/self/fd/1'' dello standard-output;
 +
* il file-speciale "pts" (da individuare di volta in volta) della console o del Terminale nel quale eventualmente il programma Gambas è stato lanciato.
 +
'''Public''' Sub Main()
 +
 +
  <FONT color=B22222>File.Save</font>("/dev/stdout", "Scrive con 'File.Save' sul file-device '/dev/stdout' \n")
 +
  <FONT color=B22222>File.Save</font>("/dev/tty", "Scrive con 'File.Save' sul file-device '/dev/tty' \n")
 +
  <FONT color=B22222>File.Save</font>("/proc/self/fd/1", "Scrive con 'File.Save' sul file-descriptor dello standard-output\n")
 +
  <FONT color=B22222>File.Save</font>("/dev/pts/'''<FONT color=blue>?</font>'''", "Scrive con 'File.Save' sul file-speciale "pts" (da individuare di volta in volta) della console o Terminale")
 +
 +
'''End'''
 +
 +
 +
===Scrivere con "''Open...For Write''"===
 +
Si potrà utilizzare l'istruzione "''Open...For Write''" e la funzione ''Write'' su diversi file particolari, che possono essere:
 +
* il file-device ''/dev/stdout'';
 +
* il file-device ''/dev/tty'';
 +
* il file-descriptor ''/proc/self/fd/1'' dello standard-output;
 +
* il file-speciale "pts" (da individuare di volta in volta) della console o del Terminale nel quale eventualmente il programma Gambas è stato lanciato.
 
  '''Public''' Sub Main()
 
  '''Public''' Sub Main()
 
   
 
   
<FONT color=gray>' ''Viene utilizzata l'istruzione "Open...For Write" in funzione della <SPAN Style="text-decoration:underline">terza</span> modalità presente nella subroutine "Scrive()".''</font>
+
  Dim fl, tty, fd, pts As File
 
   
 
   
 +
 
 
  <FONT color=gray>' ''Apre il file-device dello "standard output" in scrittura:''</font>
 
  <FONT color=gray>' ''Apre il file-device dello "standard output" in scrittura:''</font>
 
   fl = <FONT color=B22222>Open "/dev/stdout" For Write</font>
 
   fl = <FONT color=B22222>Open "/dev/stdout" For Write</font>
 
   
 
   
 
  <FONT color=gray>' ''Apre il file-device "/dev/tty" in scrittura:''</font>
 
  <FONT color=gray>' ''Apre il file-device "/dev/tty" in scrittura:''</font>
   fl = <FONT color=B22222>Open "/dev/tty" For Write</font>
+
   tty = <FONT color=B22222>Open "/dev/tty" For Write</font>
 
    
 
    
 
  <FONT color=gray>' ''Apre il file-descriptor dello standard out in scrittura:''</font>
 
  <FONT color=gray>' ''Apre il file-descriptor dello standard out in scrittura:''</font>
Riga 21: Riga 51:
 
   pts = <FONT color=B22222>Open "/dev/pts/'''<FONT color=blue>?</font>'''" For Write</font>
 
   pts = <FONT color=B22222>Open "/dev/pts/'''<FONT color=blue>?</font>'''" For Write</font>
 
   
 
   
 
 
  Scrive()
 
 
   
 
   
'''End'''
+
  <FONT color=B22222>Write</font> #fl, "Scrive con 'Open... For Write' sul file-device '/dev/stdout'\n"
 +
  <FONT color=B22222>Write</font> #fl, "Scrive con 'Open... For Write' sul file-device '/dev/tty'\n"
 +
  <FONT color=B22222>Write</font> #fd, "Scrive con 'Open... For Write' sul file-descriptor dello standard-output\n"
 +
  <FONT color=B22222>Write</font> #pts, "Scrive con 'Open... For Write' sul file-speciale "pts" (da individuare di volta in volta) della console"
 
   
 
   
 
   
 
   
'''Private''' Procedure Scrive()   <FONT color=gray>' ''Va a scrivere in console, o nel Terminale in cui il programma è stato lanciato, con 4 modalità''</font>
+
   fl.Close
+
   tty.Close
+
   fd.Close
<FONT color=gray>' '''''1''' - Mediante il classico e consueto "Print":''</font>
+
   pts.Close
  <FONT color=B22222>Print</font> "Scrive con il 'Print'\n"
 
 
 
 
<FONT color=gray>' '''''2''' - Mediante il metodo "File.Save" si diversi file particolari:''</font>
 
  <FONT color=B22222>File.Save</font>("/dev/stdout", "Scrive con 'File.Save' sul file-device '/dev/stdout' \n")
 
   <FONT color=B22222>File.Save</font>("/dev/tty", "Scrive con 'File.Save' sul file-device '/dev/tty' \n")
 
  <FONT color=B22222>File.Save</font>("/proc/self/fd/1", "Scrive con 'File.Save' sul file-descriptor dello standard-out\n")
 
  <FONT color=B22222>File.Save</font>("/dev/pts/'''<FONT color=blue>?</font>'''", "Scrive con 'File.Save' sul file-speciale "pts" (da individuare di volta in volta) della console\n\n")
 
 
 
 
<FONT color=gray>' '''''3''' - Mediante "Open...For Write" su diversi file particolari:''</font>
 
   <FONT color=B22222>Write</font> #fl, "Scrive con 'Open... For Write' sul file-device '/dev/stdout'\n"
 
  <FONT color=B22222>Write</font> #fl, "Scrive con 'Open... For Write' sul file-device '/dev/tty'\n"
 
  <FONT color=B22222>Write</font> #fd, "Scrive con 'Open... For Write' sul file-descriptor dello standard-out\n"
 
   <FONT color=B22222>Write</font> #pts, "Scrive con 'Open... For Write' sul file-speciale "pts" (da individuare di volta in volta) della console\n\n"
 
 
   
 
   
 +
'''End'''
 +
 +
 +
===Scrivere con ''Write'' e la proprietà ''File.Out''===
 +
Si potrà utilizzare l'istruzione ''Write'' e la proprietà ".Out" della Classe "File":
 +
'''Public''' Sub Main()
 
   
 
   
<FONT color=gray>' '''''4''' - Mediante la funzione "Write" ed il metodo ".Out" della Classe "File":''</font>
+
   <FONT color=B22222>Write</font> #File.Out, "Scrive con la funzione 'Write' e la proprietà 'File.Out'"
   <FONT color=B22222>Write</font> #File.Out, "Scrive con la funzione 'Write' ed il metodo 'File.Out'\n"
 
 
   
 
   
 
  '''End'''
 
  '''End'''

Versione delle 13:33, 13 ago 2014

Per scrivere nello standard output di un programma Gambas, ossia in pratica all'interno della console del'IDE di Gambas oppure nel Terminale nel quale sia stato lanciato il nostro programma Gambas a linea di comando, si potranno adottare le seguenti modalità.


Scrivere con "Print"

Si potrà utilizzare la classica istruzione Print:

 Public Sub Main()

  Print "Scrive con il 'Print'"

End


Scrivere con "File.Save"

Si potrà utilizzare il metodo "File.Save" su diversi file particolari, che possono essere:

  • il file-device /dev/stdout;
  • il file-device /dev/tty;
  • il file-descriptor /proc/self/fd/1 dello standard-output;
  • il file-speciale "pts" (da individuare di volta in volta) della console o del Terminale nel quale eventualmente il programma Gambas è stato lanciato.
Public Sub Main()

  File.Save("/dev/stdout", "Scrive con 'File.Save' sul file-device '/dev/stdout' \n")
  File.Save("/dev/tty", "Scrive con 'File.Save' sul file-device '/dev/tty' \n")
  File.Save("/proc/self/fd/1", "Scrive con 'File.Save' sul file-descriptor dello standard-output\n")
  File.Save("/dev/pts/?", "Scrive con 'File.Save' sul file-speciale "pts" (da individuare di volta in volta) della console o Terminale")

End


Scrivere con "Open...For Write"

Si potrà utilizzare l'istruzione "Open...For Write" e la funzione Write su diversi file particolari, che possono essere:

  • il file-device /dev/stdout;
  • il file-device /dev/tty;
  • il file-descriptor /proc/self/fd/1 dello standard-output;
  • il file-speciale "pts" (da individuare di volta in volta) della console o del Terminale nel quale eventualmente il programma Gambas è stato lanciato.
Public Sub Main()

 Dim fl, tty, fd, pts As File

 
' Apre il file-device dello "standard output" in scrittura:
  fl = Open "/dev/stdout" For Write

' Apre il file-device "/dev/tty" in scrittura:
  tty = Open "/dev/tty" For Write
 
' Apre il file-descriptor dello standard out in scrittura:
  fd = Open "/proc/self/fd/1" For Write
 
' Apre il file-speciale "pts" (che andrà di volta in volta individuato) della console:
  pts = Open "/dev/pts/?" For Write


  Write #fl, "Scrive con 'Open... For Write' sul file-device '/dev/stdout'\n"
  Write #fl, "Scrive con 'Open... For Write' sul file-device '/dev/tty'\n"
  Write #fd, "Scrive con 'Open... For Write' sul file-descriptor dello standard-output\n"
  Write #pts, "Scrive con 'Open... For Write' sul file-speciale "pts" (da individuare di volta in volta) della console"


  fl.Close
  tty.Close
  fd.Close
  pts.Close

End


Scrivere con Write e la proprietà File.Out

Si potrà utilizzare l'istruzione Write e la proprietà ".Out" della Classe "File":
Public Sub Main()

  Write #File.Out, "Scrive con la funzione 'Write' e la proprietà 'File.Out'"

End