PR_Open
Opens a file for reading, writing, or both. Also used to create a file.
Syntax
#include <prio.h>
PRFileDesc* PR_Open(
const char *name,
PRIntn flags,
PRIntn mode);
Parameters
The function has the following parameters:
nameThe pathname of the file to be opened.
flagsThe file status flags define how the file is accessed. It is a bitwise
ORof the following bit flags. In most cases, only one of the first three flags may be used. If theflagsparameter does not include any of the first three flags (PR_RDONLY,PR_WRONLY, orPR_RDWR), the open file can’t be read or written, which is not useful.
Note
The constants PR_RDWR and friends are not in any interface (bug 433295). Thus they cannot be used in JavaScript, you have to use the octal constants (see File I/O Snippets).
Name |
Value |
Description |
|---|---|---|
|
0x01 |
Open for reading only. |
|
0x02 |
Open for writing only. |
|
0x04 |
Open for reading and writing. |
|
0x08 |
If the file does not exist, the file is created. If the file exists, this flag has no effect. |
|
0x10 |
The file pointer is set to the end of the file prior to each write. |
|
0x20 |
If the file exists, its length is truncated to 0. |
|
0x40 |
If set, each write will wait for both the file data and file status to be physically updated. |
|
0x80 |
With |
modeWhen
PR_CREATE_FILEflag is set and the file is created, these flags define the access permission bits of the newly created file. This feature is currently only applicable on Unix platforms. It is ignored by any other platform but it may apply to other platforms in the future. Possible values of themodeparameter are listed in the table below.
Name |
Value |
Description |
|---|---|---|
|
0700 |
read, write, execute/search by owner. |
|
0400 |
read permission, owner. |
|
0200 |
write permission, owner. |
|
0100 |
execute/search permission, owner. |
|
0070 |
read, write, execute/search by group |
|
0040 |
read permission, group |
|
0020 |
write permission, group |
|
0010 |
execute/search permission, group |
|
0007 |
read, write, execute/search by others |
|
0004 |
read permission, others |
|
0002 |
write permission, others |
|
0001 |
execute/search permission, others |
Returns
The function returns one of the following values:
If the file is successfully opened, a pointer to a dynamically allocated PRFileDesc for the newly opened file. The PRFileDesc should be freed by calling PR_Close.
If the file was not opened successfully, a
NULLpointer.
Description
PR_Open creates a file descriptor (PRFileDesc) for the file with
the pathname name and sets the file status flags of the file
descriptor according to the value of flags. If a new file is created
as a result of the PR_Open call, its file mode bits are set
according to the mode parameter.