warning Not Translated
This page has not been translated into the language that your browser requested yet. The English content is being shown as a fallback.
If you want to contribute a translation for this page then please click here.
fopen
warning
This function starts with a lowercase letter.
Description
Open a file (to read from or write to).
Name | Description |
---|---|
const filename[] | The path to the file to open (if just a filename is specified, it will open the file with the name specified in the 'scriptfiles' folder). |
filemode:mode | The mode to open the file with (default: io_readwrite). |
Returns
Returns the file handle. This handle is used for reading and writing.
0 if failed to open file.
Examples
io_read mode:
// Open "file.txt" in "read only" mode
new File:handle = fopen("file.txt", io_read);
// Initialize "buf"
new buf[128];
// Check, if the file is opened
if (handle)
{
// Success
// Read the whole file
while(fread(handle, buf))
{
print(buf);
}
// Close the file
fclose(handle);
}
else
{
// Error
print("The file \"file.txt\" does not exists, or can't be opened.");
}
io_write mode:
// Open "file.txt" in "write only" mode
new File:handle = fopen("file.txt", io_write);
// Check, if file is open
if (handle)
{
// Success
// Write "I just wrote here!" into this file
fwrite(handle, "I just wrote here!");
// Close the file
fclose(handle);
}
else
{
// Error
print("Failed to open file \"file.txt\".");
}
io_readwrite mode:
// Open "file.txt" in "read and write" mode
new File:handle = fopen("file.txt", io_readwrite);
// Initialize "buf"
new buf[128];
// Check, if file is open
if (handle)
{
// Success
// Read the whole file
while(fread(handle, buf))
{
print(buf);
}
// Set the file pointer to the first byte
fseek(handle, _, seek_begin);
// Write "I just wrote here!" into this file
fwrite(handle, "I just wrote here!");
// Close the file
fclose(handle);
}
else
{
// Error
print("The file \"file.txt\" does not exists, or can't be opened.");
}
io_append mode:
// Open "file.txt" in "append only" mode
new File:handle = fopen("file.txt", io_append);
// Check, if file is open
if (handle)
{
// Success
// Append "This is a text.\r\n"
fwrite(handle, "This is a text.\r\n");
// Close the file
fclose(handle);
}
else
{
// Error
print("Failed to open file \"file.txt\".");
}
Notes
warning
If you use io_read
and the file doesn't exist, it will return a NULL reference. Using invalid references on file functions will crash your server!
Related Functions
- fclose: Close a file.
- ftemp: Create a temporary file stream.
- fremove: Remove a file.
- fwrite: Write to a file.
- fread: Read a file.
- fputchar: Put a character in a file.
- fgetchar: Get a character from a file.
- fblockwrite: Write blocks of data into a file.
- fblockread: Read blocks of data from a file.
- fseek: Jump to a specific character in a file.
- flength: Get the file length.
- fexist: Check, if a file exists.
- fmatch: Check, if patterns with a file name matches.
- ftell: Get the current position in the file.
- fflush: Flush a file to disk (ensure all writes are complete).
- fstat: Return the size and the timestamp of a file.
- frename: Rename a file.
- fcopy: Copy a file.
- filecrc: Return the 32-bit CRC value of a file.
- diskfree: Returns the free disk space.
- fattrib: Set the file attributes.
- fcreatedir: Create a directory.