53 const auto result = fopen_s( &file_descriptor, file_path,
"rb" );
57 const auto err_code = errno;
65 return file_descriptor;
78 return file_descriptor;
95 const auto result = _wfopen_s( &file_descriptor, file_path.c_str(), L
"rb" );
99 const auto err_code = errno;
107 return file_descriptor;
115template <
typename META >
125 if( 0 == std::fseek( fd , 0 , SEEK_END ) )
127 const auto end_pos = std::ftell( fd );
147 return META{ fsize, std::chrono::system_clock::now() };
Exception class for all exceptions thrown by RESTinio.
#define RESTINIO_FMT_FORMAT_STRING(s)
constexpr file_descriptor_t null_file_descriptor()
Get file descriptor which stands for null.
void close_file(file_descriptor_t fd)
Close file by its descriptor.
file_descriptor_t open_file(const char *file_path)
Open file.
std::FILE * file_descriptor_t
std::int64_t file_offset_t
META get_file_meta(file_descriptor_t fd)
Get file size.
std::uint64_t file_size_t