Scrivere nella console (standard output) di Gambas
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à.
Indice
Scrivere con "Print"
Si potrà utilizzare la classica istruzione Print, imposta anche la formattazione del testo aggiungendo ad esso il carattere escape "\n", ossia di "nuova riga a capo":
Public Sub Main() Print "Scrive con il 'Print'" End
Scrivere con "Write"
La funzione Write scrive il testo senza alcuna formattazione del testo:
Write "testo qualsiasi"
Si potrà anche utilizzare l'istruzione Write e la proprietà ".Out" della Classe "File":
Write #File.Out, "Scrive con la funzione 'Write' e la proprietà 'File.Out'"
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 o Terminale" fl.Close tty.Close fd.Close pts.Close End