用c++定义函数createFile创建一个文本文件person.txt,将n个Person对象写入文件,再定义函数readFile将文件中的信息读出显示在屏幕上
时间: 2024-03-03 19:48:10 浏览: 62
好的,下面是C++代码实现:
```c++
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
class Person {
public:
string name;
int age;
string gender;
Person(string name, int age, string gender) {
this->name = name;
this->age = age;
this->gender = gender;
}
};
void createFile(int n) {
ofstream outfile("person.txt");
for (int i = 0; i < n; i++) {
string name, gender;
int age;
cout << "请输入第" << i + 1 << "个人的姓名、年龄和性别:" << endl;
cin >> name >> age >> gender;
Person p(name, age, gender);
outfile << p.name << ' ' << p.age << ' ' << p.gender << endl;
}
outfile.close();
}
void readFile() {
ifstream infile("person.txt");
string line;
while (getline(infile, line)) {
cout << line << endl;
}
infile.close();
}
int main() {
int n;
cout << "请输入人数:" << endl;
cin >> n;
createFile(n);
readFile();
return 0;
}
```
在这个程序中,我们定义了一个`Person`类,用于表示一个人的信息,包括姓名、年龄和性别。我们定义了两个函数,`createFile`用于创建文件并将`n`个`Person`对象写入文件,`readFile`用于读取文件并显示文件中的内容。在`createFile`函数中,我们使用`ofstream`类来创建文件,并将`Person`对象的信息写入文件中。在`readFile`函数中,我们使用`ifstream`类来读取文件中的内容,并将其输出到屏幕上。在`main`函数中,我们首先输入需要输入的人数,然后调用`createFile`和`readFile`函数来执行操作。
注意,在使用`ifstream`和`ofstream`类读写文件时,我们需要在操作完成后及时关闭文件,以释放文件资源。
阅读全文