Differenze tra le versioni di "Fopen ()"
Da Gambas-it.org - Wikipedia.
Riga 11: | Riga 11: | ||
Semplice esempio uso in Gambas: | Semplice esempio uso in Gambas: | ||
+ | Library "libc:6" | ||
+ | |||
<FONT color=gray>' ''FILE *fopen (const char *__restrict __filename, const char *__restrict __modes)'' | <FONT color=gray>' ''FILE *fopen (const char *__restrict __filename, const char *__restrict __modes)'' | ||
' ''Open a file and create a new stream for it.''</font> | ' ''Open a file and create a new stream for it.''</font> | ||
− | Private Extern <FONT color=#B22222>fopen</font>(__filename As String, __modes As String) As Pointer | + | Private Extern <FONT color=#B22222>fopen</font>(__filename As String, __modes As String) As Pointer |
+ | |||
+ | <FONT Color=gray>' ''int fclose (FILE *__stream)'' | ||
+ | ' ''Close STREAM.''</font> | ||
+ | Private <FONT color=#B22222>Extern fclose</font>(filestream As Pointer) As Integer | ||
Riga 23: | Riga 29: | ||
p = fopen("<FONT color=gray>''/percorso/del/file/da/aprire''</font>", "r") | p = fopen("<FONT color=gray>''/percorso/del/file/da/aprire''</font>", "r") | ||
+ | ...<FONT color=gray>''Fa qualcosa''</font>... | ||
...... | ...... | ||
− | + | ||
− | + | <FONT color=gray>' ''Al termine è necessario chiudere il file precedentemente aperto:''</font> | |
+ | flose(p) | ||
+ | |||
'''End''' | '''End''' |
Versione delle 09:18, 25 dic 2016
La funzione della libreria di C
FILE *fopen (const char *__restrict __filename, const char *__restrict __modes)
apre il file __filename associandolo ad uno stream, e predisponendolo per le operazioni di input ed output come indicato da __modes.
Volendola utilizzare in Gambas, bisognerà dichiararla con Extern, nonché bisognerà dichiarare la libreria di C: libc.so.6, nella quale la funzione è contenuta:
Private Extern fopen(__filename As String, __modes As String) As Pointer In "libc:6"
In caso di fallimento viene ritornato NULL.
Semplice esempio uso in Gambas:
Library "libc:6" ' FILE *fopen (const char *__restrict __filename, const char *__restrict __modes) ' Open a file and create a new stream for it. Private Extern fopen(__filename As String, __modes As String) As Pointer ' int fclose (FILE *__stream) ' Close STREAM. Private Extern fclose(filestream As Pointer) As Integer Public Sub Main() Dim p As Pointer ' Apriamo un file di testo in lettura: p = fopen("/percorso/del/file/da/aprire", "r") ...Fa qualcosa... ...... ' Al termine è necessario chiudere il file precedentemente aperto: flose(p) End