写一个载入文件同时写入数组的读者管理系统,要求用到头文件和fstream和二维数组vector(将用户状态存入其中),要有用户名称和用户密码以及借书的数量
时间: 2024-02-09 07:08:11 浏览: 114
好的,我明白了。以下是一个示例代码,可以实现你所提出的要求。请注意,这只是一个基本的实现,你可以根据自己的需要进行修改和扩展。
```c++
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
struct Reader {
string name;
string password;
int borrowedBooks;
};
void loadReaders(vector<Reader>& readers) {
ifstream inputFile;
inputFile.open("readers.txt");
if (inputFile.fail()) {
cout << "Unable to open the file." << endl;
return;
}
string name, password;
int borrowedBooks;
while (inputFile >> name >> password >> borrowedBooks) {
Reader reader = { name, password, borrowedBooks };
readers.push_back(reader);
}
inputFile.close();
}
void saveReaders(const vector<Reader>& readers) {
ofstream outputFile;
outputFile.open("readers.txt");
if (outputFile.fail()) {
cout << "Unable to create the file." << endl;
return;
}
for (const auto& reader : readers) {
outputFile << reader.name << " " << reader.password << " " << reader.borrowedBooks << endl;
}
outputFile.close();
}
int main() {
vector<Reader> readers;
loadReaders(readers);
// do something with readers, such as add or remove a reader, or update a reader's borrowedBooks
saveReaders(readers);
return 0;
}
```
在这个示例中,我们定义了一个名为`Reader`的结构体,它有三个成员变量:`name`、`password`和`borrowedBooks`。`loadReaders`函数从文件中读取读者信息,并将其存储在一个`vector`中。`saveReaders`函数将读者信息写回文件。
请将上述代码保存为`.cpp`文件,然后编译运行即可。
希望这个答案可以帮到你。如果你有其他问题,可以继续向我提问。
阅读全文