C++ 在txt文档的某些部分中查找信息并将其存储在变量中
我有一个很大的.txt文件,里面有信息。它的结构是这样的: ID: 54670 Gender: M Name: John Doe Address: Blah Blah Blah Email: JohnDoe@.com 身份证号码:54670 性别:M 姓名:无名氏 地址:诸如此类 电邮:JohnDoe@.com 我正在尝试创建一个允许输入ID的程序。该程序将在文本文档中找到ID,然后存储ID、性别、姓名、地址等。。在变量中。 我可以搜索ID并打印以下行。但我不知道如何存储每行的特定部分,在找到ID后只存储5行中的信息。这是我到目前为止所拥有的全部。任何指点都将不胜感激。在过去的几周里,我刚刚开始自学代码。所以你们都是很好的资源C++ 在txt文档的某些部分中查找信息并将其存储在变量中,c++,variables,search,ifstream,C++,Variables,Search,Ifstream,我有一个很大的.txt文件,里面有信息。它的结构是这样的: ID: 54670 Gender: M Name: John Doe Address: Blah Blah Blah Email: JohnDoe@.com 身份证号码:54670 性别:M 姓名:无名氏 地址:诸如此类 电邮:JohnDoe@.com 我正在尝试创建一个允许输入ID的程序。该程序将在文本文档中找到ID,然后存储ID、性别、姓名、地址等。。在变量中。 我可以搜索ID并打印以下行。但我不知道如何存储每行的特定部分,在找到I
struct userInfo
{
int id;
char gender;
std::string name,address,email;
};
std::string search,line;
std::ifstream inFile;
inFile.open("iData.txt");
if (!inFile)
{
std::cout << "Was unable to open file!";
return 1;
}
std::cout << "Enter I.D" << std::endl;
std::getline(std::cin, search);
while (inFile.good())
{
std::getline(inFile, line);
if (line.find(search) != std::string::npos)
{
std::cout << line << std::endl;
}
}
inFile.close();
struct userInfo
{
int-id;
性别;
std::字符串名称、地址、电子邮件;
};
std::字符串搜索,行;
std::ifstream-infle;
infle.open(“iData.txt”);
如果(!infle)
{
std::cout您可以读取一次文件并将信息保存在地图中,这样当给定id时,您就可以获得信息地图[id]。gender您可以创建
map<int,list<string>>
之后你就可以使用
List<string> details = map.find[id];
List details=map.find[id];
我知道我可以信赖这个地方。我有几本书,但没有一本提到地图。我感谢你的帮助。我有一些改进要做,但你帮助我向前迈出了一大步。非常感谢。
List<string> details = map.find[id];