FOPEN()

From Recital Documentation Wiki
Jump to: navigation, search

Purpose

Function to open an existing ASCII text file or http URL


Syntax

FOPEN(<expC> [,expN>])


See Also

FCREATE(), FCLOSE(), FEOF(), FERROR(), FFLUSH(), FGETS(), FPUTS(), FREAD(), FREADSTR(), FSEEK(), FWRITE(), GETURL(), MEMOREAD(), MEMOWRITE(), TEXTEDIT()


Description

The FOPEN() function opens an existing ASCII text file. It returns a numeric file pointer when the file is opened successfully, or a -1 if unsuccessful. The <expC> is the name of the ASCII file to open. Since the file pointer is required to identify an open file to other file functions, always assign the return value to a memory variable. The optional <expN> determines the file access mode:


<expN> Access Mode
If not specified, read-only
0 Read-only
1 Write only. Existing contents are deleted.
2 Append. Text may be added to the end of the existing contents.


If an error occurs, -1 is returned by the FERROR() function. The FCLOSE() function is used to close a file which has been opened with FOPEN().

Recital 10 enhancements

The FOPEN() function can also be used to open http page URLs. The specified <expC> is the URL to open: http://twitter.com/recitalsoftware. Please see below for an example.

The FOPEN() function can also be used to open Linux FIFO pipes. The specified <expC> is the pipe to open: fifo://pipename.


Example

use accounts
fp=fopen("existing.file")
if ferror()=-1
    dialog box "The file could not be opened."
else
    string = fgets(fp)
    do while not empty(string)
        ? string
        string = fgets(fp)
    enddo
    ?
endif
fclose(fp)
if ferror()=-1
    dialog box "The file could not be closed."
endif  
 
// http URL example
<!-- twitter.rsp -->
<html>
<body>
<%
fp=fopen("http://twitter.com/recitalsoftware")
do while not feof(fp)
    ? fgets(fp)
enddo
%>
</body>
</html>


Products

Recital, Recital Server