,可以通过以下步骤来实现:
class Person {
public:
std::string name;
int age;
};
#include <fstream>
// 创建对象并写入文件
void writeToFile() {
std::ofstream file("person_data.txt");
if (file.is_open()) {
file << "John Doe 25" << std::endl;
file << "Jane Smith 30" << std::endl;
file.close();
}
}
#include <iostream>
#include <fstream>
#include <vector>
// 从文件中读取对象
std::vector<Person> readFromFile() {
std::vector<Person> people;
std::ifstream file("person_data.txt");
if (file.is_open()) {
std::string line;
while (std::getline(file, line)) {
std::stringstream ss(line);
std::string name;
int age;
ss >> name >> age;
Person person;
person.name = name;
person.age = age;
people.push_back(person);
}
file.close();
}
return people;
}
int main() {
// 写入对象数据到文件
writeToFile();
// 从文件中读取对象数据
std::vector<Person> people = readFromFile();
// 输出读取的对象数据
for (const auto& person : people) {
std::cout << "Name: " << person.name << ", Age: " << person.age << std::endl;
}
return 0;
}
这样,就可以在cpp中从文件读入对象数据。在这个例子中,我们创建了一个名为Person的类来存储姓名和年龄属性,通过文件流(fstream)将对象数据写入文件,然后再通过文件流逐行读取文件数据,并将数据转换为对象,最后可以使用读取的对象数据进行后续操作。请注意,这只是一个简单的示例,实际应用中可能需要根据对象的属性进行适当的调整和扩展。
领取专属 10元无门槛券
手把手带您无忧上云