BinaryFile::BinaryFile(const std::string &path) : OsFile(path, FT_BINARY) { std::istreambuf_iterator<char> dataBegin(m_file); std::istreambuf_iterator<char> dataEnd; std::copy(dataBegin, dataEnd, std::back_inserter(m_fileData)); }
TextFile::TextFile(const std::string &path) : OsFile(path, FT_TEXT) { std::istreambuf_iterator<char> dataBegin(m_file); std::istreambuf_iterator<char> dataEnd; std::string fileDataStr(dataBegin, dataEnd); m_fileData.str(fileDataStr); }
bool bearlib::readTheWholeFile(const char* fn, std::vector<char>& data) { std::ifstream file(fn, std::ios_base::in | std::ios_base::binary); if ( !file ) return false; std::istreambuf_iterator<char> dataBegin(file); std::istreambuf_iterator<char> dataEnd; data.assign(dataBegin, dataEnd); file.close(); return true; }