"DellBoy" <pr**********@hotmail.com> wrote in message
news:11**********************@o13g2000cwo.googlegr oups.com...
I would like to be able to do something like this:
string sFileInfo = "MyFile.tmp";
fstream InfoFile;
InfoFile.open(sFileInfo, fstream::app);
// >> do some i/o operations <<
InfoFile.close();
return 0;
How do I convert the filename string to the const char * that fstream
wants?
Google for a reference on the std::string class. You return a pointer to a
const char* with its c_str() member function. Thats just one of a long list
of interesting and handy functions.
// test.cpp
#include <iostream>
#include <fstream>
#include <string>
int main()
{
std::string s_filename( "data.dat" );
std::ifstream ifs;
ifs.open( s_filename.c_str() );
if ( !ifs )
{
std::cout << "error while opening " << s_filename;
std::cout << std::endl;
return 0;
}
std::string s_buffer;
std::vector<std::string> vs;
while ( std::getline( ifs, s_buffer ) )
{
vs.push_back( s_buffer );
}
if ( !ifs.eof() ) // if reason of termination != eof
{
std::cout << "error while reading file.\n";
return 0;
}
// do something with the vector of strings
return 0;
}