Ricevere dati da un programma esterno mediante un file
Un programma Gambas può comunicare e ricevere dati da un altro programma, scritto in Gambas o in altro linguaggio, usando in comune un file.
In particolare consideriamo qui il caso in cui il programma esterno scrive dei dati nel file e il nostro programma Gambas va a leggere il file subito dopo, per raccogliere e utilizzare quei dati.
Esempio di comunicazione fra due programmi Gambas
Mostriamo un esempio pratico, nel quale sia il programma esterno a creare il file, sul quale scriverà un valore numerico.
Il programma esterno sarà scritto in Gambas e avrà il seguente codice, con il quale scriverà nel file in comune l'orario ogni secondo:
Public Sub Form_Open() Dim fl As File fl = Open "/tmp/file_in_comune" For Write Create Do Write #fl, Str(Time) Wait 1 Loop End
Il nostro programma Gambas, invece, aprirà il file in comune e lo porrà sotto osservazione con la parola-chieve "WATCH". Potrà così leggere nel file ogni qual volta viene scritto qualcosa (in questo esempio l'orario):
Private fl As File Public Sub Form_Open() fl = Open "/tmp/file_in_comune" For Read Watch End Public Sub File_Read() Dim s As String Read #fl, s, 8 Print s End