32#include "../System/databuffer.h"
44 static std::string
read_text(
const std::string &filename);
50 static void write_text(
const std::string &filename,
const std::string &text,
bool write_bom =
false);
120 const std::string &filename);
126 const std::string &filename,
130 unsigned int flags = 0);
138 const std::string &filename);
144 const std::string &filename,
148 unsigned int flags = 0);
General purpose data buffer.
Definition: databuffer.h:42
File I/O device.
Definition: file.h:41
static std::string read_text(const std::string &filename)
Loads an UTF-8 text file into a string.
static DataBuffer read_bytes(const std::string &filename)
Loads an file into a byte buffer.
Flags
Optimization Flags.
Definition: file.h:106
@ flag_random_access
Definition: file.h:109
@ flag_no_buffering
Definition: file.h:108
@ flag_write_through
Definition: file.h:107
@ flag_sequential_scan
Definition: file.h:110
bool open(const std::string &filename, OpenMode mode, unsigned int access, unsigned int share=share_all, unsigned int flags=0)
Opens a file.
static void write_text(const std::string &filename, const std::string &text, bool write_bom=false)
Saves an UTF-8 text string to file.
ShareFlags
File sharing flags.
Definition: file.h:71
@ share_all
All other sharing flags combined.
Definition: file.h:82
@ share_write
Allow others to open the file for writing.
Definition: file.h:76
@ share_delete
Allow others to delete the file.
Definition: file.h:79
@ share_read
Allow others to open the file for reading.
Definition: file.h:73
bool open(const std::string &filename)
Opens a file read only.
File()
Constructs a file object.
static void write_bytes(const std::string &filename, const DataBuffer &bytes)
Saves a byte buffer to file.
AccessFlags
Access flags.
Definition: file.h:58
@ access_write
Generic write access.
Definition: file.h:63
@ access_read_write
Generic read write access.
Definition: file.h:66
@ access_read
Generic read access.
Definition: file.h:60
OpenMode
File opening modes.
Definition: file.h:87
@ create_new
Create a new file. Fails if it already exists.
Definition: file.h:101
@ open_existing
Open existing file. Fails if it does not exist.
Definition: file.h:92
@ open_existing_truncate
Open existing file and truncate it.
Definition: file.h:95
@ create_always
Create file, even if it already exists.
Definition: file.h:98
@ open_always
Open file or create it if it does not exist.
Definition: file.h:89
File(const std::string &filename, OpenMode mode, unsigned int access, unsigned int share=share_all, unsigned int flags=0)
Constructs a file object.
File(const std::string &filename)
Constructs a file object read only.
I/O Device interface.
Definition: iodevice.h:50