CMS 3D CMS Logo

FileUtils.cc
Go to the documentation of this file.
3 #include <fstream>
4 #include <sstream>
5 
7  std::ifstream inputFile;
8  inputFile.open(fileName.c_str());
9  if (!inputFile.good()) {
10  std::stringstream msg;
11  msg << "File \"" << fileName << "\" cannot be open.";
12  inputFile.close();
13  throw cond::Exception(msg.str());
14  }
15  // get pointer to associated buffer object
16  std::filebuf* pbuf = inputFile.rdbuf();
17  // get file size using buffer's members
18  long size = pbuf->pubseekoff(0, std::ios::end, std::ios::in);
19  pbuf->pubseekpos(0, std::ios::in);
20  // allocate memory to contain file data
21  char* buffer = new char[size + 1];
22  // get file data
23  pbuf->sgetn(buffer, size);
24  inputFile.close();
25  buffer[size] = 0;
26  m_content += buffer;
27  delete[] buffer;
28  return true;
29 }
persistency::Exception Exception
Definition: Exception.h:25
std::string m_content
Definition: FileUtils.h:18
bool read(const std::string &fileName)
Definition: FileUtils.cc:6
tuple msg
Definition: mps_check.py:286