(C++ 如何把文件(文件一行存的是一个类对象的数据)中的数据读出存入到vector容器中,再传给一个临时类对象,或者有更好的方法?我是小白,有C和Python的一点基础
取出数据之后还可以修改再传进文件中,我想做的是银行管理系统,要做登录,存取款,转账,现在是被文件的读取给难住了,望大佬们指点.最好有点关键代码,谢谢qwq
文件内容:
1,first,100
2,second,95
3,third,59
// FileOperation.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include <fstream>
#include <vector>
using namespace std;
class student {
public:
int nNo;
string strName;
int nScore;
};
int main(int argc, char **argv)
{
vector<string> fileLines;
fstream file("fstream.txt", ios::in );
if (!file.bad())
{
file.clear();
file.seekg(0, ios::beg);
while (!file.eof())
{
char szLine[1024] = { 0 };
file.getline(szLine, 1024);
fileLines.push_back(szLine);
}
}
vector<student> vecstudent;
const char ch = ',';
char szLine[1024] = { 0 };
for (auto &it: fileLines)
{
if (!it.empty())
{
strcpy_s(szLine, 1024, it.c_str());
student studenobj;
char *next_token = NULL;
char *token = strtok_s(szLine, &ch, &next_token);
int index = 0;
while (token != NULL)
{
if (index == 0)
{
studenobj.nNo = atoi(token);
}
else if (index == 1)
{
studenobj.strName = token;
}
else if (index == 2)
{
studenobj.nScore = atoi(token);
vecstudent.push_back(studenobj);
index = 0;
}
index++;
token = strtok_s(next_token, &ch, &next_token);
}
}
}
}