Library: Foundation
Package: Streams
Header: Poco/FileStream.h
Description
The base class for FileInputStream and FileOutputStream.
This class is needed to ensure the correct initialization order of the stream buffer and base classes.
Files are always opened in binary mode, a text mode with CR-LF translation is not supported. Thus, the file is always opened as if the std::ios::binary flag was specified. Use an InputLineEndingConverter or OutputLineEndingConverter if you require CR-LF translation.
On Windows platforms, UTF-8 encoded Unicode paths are correctly handled.
Inheritance
Direct Base Classes: std::ios
All Base Classes: std::ios
Known Derived Classes: FileInputStream, FileOutputStream, FileStream
Member Summary
Member Functions: close, nativeHandle, rdbuf, size
Types Aliases
NativeHandle
using NativeHandle = FileStreamBuf::NativeHandle;
Constructors
FileIOS
FileIOS();
Creates the basic stream.
Destructor
~FileIOS
~FileIOS();
Destroys the stream.
Member Functions
close
void close();
Closes the file stream.
If, for an output stream, the close operation fails (because the contents of the stream buffer cannot synced back to the filesystem), the bad bit is set in the stream state.
nativeHandle
NativeHandle nativeHandle() const;
Returns native file descriptor handle
rdbuf
FileStreamBuf * rdbuf();
Returns a pointer to the underlying streambuf.
size
Poco::UInt64 size() const;
Returns file size
Variables
_buf
FileStreamBuf _buf;