我有一个classlook的文本文件,如下所示:
FName LName Class SeatNum
FName2 LName2 Class2 SeatNum2
...
然后列表继续。
如何读取字符串并将它们存储到不同的变量中?
如何结合课堂和课程SeatNum是ID(3D-20)?
如何验证每个输入名称和ID必须匹配?
例如,输入> FName LName Class2-SeatNum2错误,请再试一次。
非常感谢您的帮助。 谢谢!
答案 0 :(得分:1)
下次再说一遍 - 因为你没有详细说明问题,很难弄明白你的意思。总之:
为了做你所要求的事情:
a)从文件中读取数据
b)根据单元格之间的字符拆分数据。
在C ++中,分裂字符串算法正在提升 - 如果您不知道这是什么,请务必查看此处:http://www.boost.org/
<强> Soltion 强>: 我在这里修改各种cPlusPlus指南以适合您的紫癜:
#include <sstream>
#include <iostream>
#include <fstream>
#include <vector>
#include <boost/algorithm/string/split.hpp>
#include <boost/algorithm/string/classification.hpp>
using namespace std;
vector<string> getData (string filePath) {
vector<string> Cells; // In the end, here we will store each cell's content.
stringstream fileContent(""); // This is a string stream, which will store the database as a string.
ofstream myfile; // the file which the database is in
myfile.open (filePath); // Opening the file
while ( getline (myfile,line) ) // Reading it until it's over
{
fileContent << line; // adding each line to the string
}
split(Cells, fileContent.str(), is_any_of(" "));// Here, insert the char which seperates the cells from each other.
myfile.close()
return Cells; // returning the split string.
}
希望我帮助过:)