#include <userver/fs/blocking/c_file.hpp>
A std::FILE*
wrapper.
The file is closed in the destructor
- Note
- The operations on the file are blocking and not thread-safe
Definition at line 25 of file c_file.hpp.
|
| CFile () |
| Creates an empty file handle.
|
|
| CFile (CFile &&) noexcept |
|
CFile & | operator= (CFile &&) noexcept |
|
| CFile (const std::string &path, OpenMode flags, boost::filesystem::perms perms=boost::filesystem::perms::owner_read|boost::filesystem::perms::owner_write) |
| Opens the file.
|
|
| CFile (std::FILE *file) noexcept |
| Adopt the std::FILE* directly.
|
|
bool | IsOpen () const |
| Checks if the file is open.
|
|
std::FILE * | GetNative () & |
| Returns the underlying file handle.
|
|
std::FILE * | Release () && |
| Passes the ownership of the file to the caller.
|
|
void | Close () && |
| Closes the file manually.
|
|
std::size_t | Read (char *buffer, std::size_t max_size) |
| Reads data from the file.
|
|
void | Write (std::string_view data) |
| Writes data to the file.
|
|
void | Flush () |
| Synchronizes the written data with the file on disk.
|
|
void | FlushLight () |
| Synchronizes the written data with the file on disk without fsync.
|
|
std::uint64_t | GetPosition () const |
| Fetches the current position in the file.
|
|
std::uint64_t | GetSize () const |
| Fetches the file size.
|
|
◆ CFile()
fs::blocking::CFile::CFile |
( |
const std::string & | path, |
|
|
OpenMode | flags, |
|
|
boost::filesystem::perms | perms = boost::filesystem::perms::owner_read|boost::filesystem::perms::owner_write ) |
Opens the file.
- Exceptions
-
◆ Close()
void fs::blocking::CFile::Close |
( |
| ) |
&& |
Closes the file manually.
- Exceptions
-
◆ Flush()
void fs::blocking::CFile::Flush |
( |
| ) |
|
Synchronizes the written data with the file on disk.
- Exceptions
-
◆ FlushLight()
void fs::blocking::CFile::FlushLight |
( |
| ) |
|
Synchronizes the written data with the file on disk without fsync.
- Exceptions
-
◆ GetPosition()
std::uint64_t fs::blocking::CFile::GetPosition |
( |
| ) |
const |
Fetches the current position in the file.
- Exceptions
-
◆ GetSize()
std::uint64_t fs::blocking::CFile::GetSize |
( |
| ) |
const |
Fetches the file size.
- Exceptions
-
◆ Read()
std::size_t fs::blocking::CFile::Read |
( |
char * | buffer, |
|
|
std::size_t | max_size ) |
Reads data from the file.
- Returns
- The amount of bytes actually acquired, which can be equal to
max_size
, or less on end-of-file
- Exceptions
-
◆ Write()
void fs::blocking::CFile::Write |
( |
std::string_view | data | ) |
|
Writes data to the file.
- Warning
- Unless
Flush
is called, there is no guarantee the file on disk is actually updated
- Exceptions
-
The documentation for this class was generated from the following file: