class Poco::FileInputStream

Overview

An input stream for reading from a file. More…

#include <FileStream.h>

class FileInputStream:
    public Poco::FileIOS,
    public istream
{
public:
    // construction

    FileInputStream();

    FileInputStream(
        const std::string& path,
        std::ios::openmode mode = std::ios::in
        );
};

Inherited Members

public:
    // methods

    void
    open(
        const std::string& path,
        std::ios::openmode mode
        );

    void
    close();

    FileStreamBuf*
    rdbuf();

protected:
    // fields

    FileStreamBuf _buf;
    std::ios::openmode _defaultMode;

Detailed Documentation

An input stream for reading from a file.

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 if you require CR-LF translation.

On Windows platforms, if POCO_WIN32_UTF8 is #define’d, UTF-8 encoded Unicode paths are correctly handled.

Construction

FileInputStream()

Creates an unopened FileInputStream.

FileInputStream(
    const std::string& path,
    std::ios::openmode mode = std::ios::in
    )

Creates the FileInputStream for the file given by path, using the given mode.

The std::ios::in flag is always set, regardless of the actual value specified for mode.

Throws a FileNotFoundException (or a similar exception) if the file does not exist or is not accessible for other reasons.