File module

file_close

procedureSource

Closes file and sets it to the closed state. A file that is already closed, or was never opened, is left alone, so closing twice is safe. A failure to close is logged and leaves the handle as it was.

file_close :: (file: *File)

Parameters

file: *File
Example
#import "Extensions/Environment";
base := environment_variable("TMPDIR");
if base == "" base = environment_variable("TEMP");
if base == "" base = "/tmp";
path := tprint("%/jai-doc-close.bin", base);
defer file_delete(path);
assert(write_entire_file(path, "x"));
file, ok := file_open(path);
assert(ok && is_valid(file));
file_close(*file);
assert(!is_valid(file));
file_close(*file); // closing twice is fine

Doesn't run in the browser (only on windows).

See also