Hi, I'm looking for a portable way to open a file, read some data from it, and do a proper error reporting in case of error. Apparently std::fstream is not suitable for this task because it does not provide means to retrieve original error code or even some human readable description of what went wrong (checking errno does not count since the standard does not guarantee it is set by any functions in std::fstream). I'm wondering if boost::iostreams can do that, but I've found nothing this far that could help in getting the error code. I've also tried boost::filesystem::fstream, but no luck. Users of large frameworks like Qt have advantage of their portable wrappers for file I/O like QFile. Are there any means in Boost which provide similar functionality? Related StackOverflow question: https://stackoverflow.com/questions/45840686/portable-way-to-read-a-file-in-... Thanks.