8 #include <ail/exception.hpp>
9 #include <ail/types.hpp>
21 open_mode_write_truncate
,
22 open_mode_read_write_truncate
26 file(std::string
const & name
, open_mode_type mode
= open_mode_read_write
);
30 bool open(std::string
const & name
, open_mode_type mode
= open_mode_read_write
);
31 bool open_read_only(std::string
const & name
);
32 bool open_create(std::string
const & name
);
34 std::string
read(std::size_t size
);
35 void read(char * output
, std::size_t size
);
36 void write(std::string
const & input
);
37 void write(char const * input
, std::size_t size
);
40 std::size_t get_size();
41 std::size_t get_file_pointer();
42 void set_file_pointer(std::size_t offset
);
46 FILE * file_descriptor
;
49 bool read_file(std::string
const & file_name
, std::string
& output
);
50 bool write_file(std::string
const & file_name
, std::string
const & input
);
51 bool append_to_file(std::string
const & file_name
, std::string
const & input
);
52 bool read_lines(std::string
const & file_name
, std::vector
<std::string
> & output
);
54 bool create_directory(std::string
const & path
);
55 bool read_directory(std::string
const & directory
, string_vector
& files
, string_vector
& directories
);
56 bool rename_file(std::string
const & target
, std::string
const & new_name
);
57 bool remove_file(std::string
const & path
);
59 std::string
join_paths(std::string
const & left
, std::string
const & right
);
60 bool retrieve_extension(std::string
const & path
, std::string
& output
);
62 bool file_exists(std::string
const & path
);