原创+收藏
//awzzz@2002
//入门计划->使用(C++库)fstream读写文件
//APO->using fstream.
//accidence project of using fstream.(c++ iostream library)
/*
Reference: http://www.cplusplus.com/ref/iostream/fstream/
Description
fstream class provides a stream interface to read and write data from/to files.
The class mantains internally (privately) a pointer to a filebuf object in charge
of the interaction with the file. This pointer can be obtained/modified by calling
member rdbuf.
The file to be processed can be specified as a parameter for the constructor or by
calling member open.
After a file is processed it can be closed by calling member close. In this case
the file stream may be used to open another file.
Member is_open can be used to determine wether the stream is currently operating
on a file or not.
Please refer to parent classes for more details on information mantained by an
fstream object.
*/
//使用(C++库)fstream读写文件
//simple example
#include <iostream>
#include <fstream>
using namespace std;
#ifdef WIN32
#define TEST_FILE "c:\\tmp\\test.txt"
#else
#define TEST_FILE "/tmp/test.txt"
#endif
void test()
{
{
//fstream sfs;
//sfs.open(TEST_FILE, ios_base::out);
fstream sfs(TEST_FILE, ios_base::out);
char buf[] = "1234567890";
sfs.write(buf, sizeof(buf));
sfs.close();
}
{
int len;
char* buf;
//fstream sfs;
//sfs.open(TEST_FILE);
fstream sfs(TEST_FILE);
sfs.seekg (0, ios::end);
len = sfs.tellg();
sfs.seekg (0, ios::beg);
buf = new char[len];
sfs.read(buf, len);
cout << buf << endl;
delete []buf;
sfs.close();
}
}
int main(int argc, char* argv[])
{
test();
return 0;
}