您的位置:首页 > 其它

文件的二进制读写及文本读写 两个实例

2009-03-01 22:08 274 查看
#include <fstream>
#include <iostream>
using namespace std;
class Dog
{
private:
int weight;
int age;
public:
Dog(int x=0,int y=0)
{
weight = x;
age = y;
}
void displayDetails()
{
cout << weight << "," << age <<endl;
}

};
int main()
{
Dog dog1(5,10);

//ofstream fout("dogs.dat");
ofstream fout("dogs.dat",ios_base::binary);
fout.write((char *) &dog1,sizeof(dog1));
fout.close();

Dog dog2;
//ifstream fin("dogs.dat");
ifstream fin("dogs.dat",ios_base::binary);
fin.read((char *) &dog2,sizeof dog2);
dog2.displayDetails();
fin.close();

system("pause");
return 0;
}
//////////////////////////////////////

#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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐