文本文件——写文件
#include<iostream>
#include<fstream>
using namespace std;
//文本文件中的写文件
void test01() {
//包含头文件,fstream
//创建流对象
ofstream ofs;
//指定打开方式
ofs.open("text.txt", ios::out);
//写内容
ofs << "姓名:张山" << endl;
ofs << "年龄:15" << endl;
ofs << "性别:无" << endl;
ofs.close();
}
int main() {
test01();
return 0;
}
文本文件——读文件
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
void test01() {
ifstream ifs;
ifs.open("text.txt", ios::in);
if (!ifs.is_open())
cout << "文件打开失败" << endl;
//读数据
//char buf[1024] = { 0 };
/*while (ifs >> buf) {
cout << buf << endl;
}*/
//while (ifs.getline(buf, sizeof(buf)))
//{
// cout << buf << endl;
//}
/*string buf;
while (getline(ifs, buf)) {
cout << buf << endl;
}*/
char c;
while ((c = ifs.get()) != EOF) {
cout << c;
}
ifs.close();
}
int main() {
test01();
return 0;
}
二进制文件——写文件
#include<iostream>
#include<fstream>
using namespace std;
//二进制文件,写文件
class Person {
public:
char m_name[65];
int m_age;
};
void test01() {
ofstream ofs("person.txt", ios::out | ios::binary);
//ofs.open("person.text", ios::out | ios::binary);
Person p = { "飞天大草", 666 };
ofs.write((const char*)&p, sizeof(Person));
ofs.close();
}
int main() {
test01();
return 0;
}
二进制文件——读文件
#include<iostream>
#include<fstream>
using namespace std;
class Person {
public:
char m_name[64];
int m_age;
};
void test01() {
ifstream ifs;
ifs.open("person.txt", ios::in | ios::binary);
if (!ifs.is_open()) {
cout << "打开文件失败" << endl;
return;
}
Person p;
ifs.read((char*)&p, sizeof(Person));
cout << "姓名:" << p.m_name << "年龄:" << p.m_age << endl;
ifs.close();
}
int main() {
test01();
return 0;
}