C++ 为字符串插入文本
我正在写一个小程序,用户可以在那里搜索美国的国家公园。我有他们所在州的所有公园和其他特色。目前,我只有一个用户可以看到所有的公园,以及他们所在的州、成立的年份和他们的网站。但是,我希望用户能够按州搜索公园,但我很难确定如何在文本文件中搜索州字符串并仅显示那些公园。这是我到目前为止所拥有的`C++ 为字符串插入文本,c++,string,visual-studio,search,C++,String,Visual Studio,Search,我正在写一个小程序,用户可以在那里搜索美国的国家公园。我有他们所在州的所有公园和其他特色。目前,我只有一个用户可以看到所有的公园,以及他们所在的州、成立的年份和他们的网站。但是,我希望用户能够按州搜索公园,但我很难确定如何在文本文件中搜索州字符串并仅显示那些公园。这是我到目前为止所拥有的` #include<iostream> #include<cmath> #include<iomanip> #include<string> #include &
#include<iostream>
#include<cmath>
#include<iomanip>
#include<string>
#include <fstream>
using namespace std;
int main()
{
string parkname = "";
string city = "";
string state = "";
string phone = "";
string website = "";
string famousfor = "";
int yearestablished = 0;
double dailyfee = 0;
int sqyards = 0;
char hikingtrails = ' ';
char skiing = ' ';
char wildernesscamp = ' ';
char canoing = ' ';
char kayaking = ' ';
char guidedtours = ' ';
char allseason = ' ';
ifstream inFile;
inFile.open("nationalparks.txt");
if (inFile.is_open())
{
cout << "Park Name" << setw(25) << "City" << setw(31) << "State" << setw(41) << "Year Established" << setw(19) << "Website" << endl;
getline(inFile, parkname, '#');
getline(inFile, city, '#');
getline(inFile, state, '#');
inFile >> yearestablished;
inFile.ignore();
getline(inFile, phone, '#');
getline(inFile, website, '#');
inFile >> dailyfee;
inFile.ignore();
inFile >> sqyards;
inFile.ignore();
inFile >> hikingtrails;
inFile.ignore();
inFile >> skiing;
inFile.ignore();
inFile >> wildernesscamp;
inFile.ignore();
inFile >> canoing;
inFile.ignore();
inFile >> kayaking;
inFile.ignore();
inFile >> guidedtours;
inFile.ignore();
inFile >> allseason;
inFile.ignore();
getline(inFile, famousfor);
while (!inFile.eof())
{
cout << parkname << setw(30) << city << setw(30) << state << setw(28) << yearestablished << setw(40) << website << setw(30) << endl;
cout << left;
getline(inFile, parkname, '#');
getline(inFile, city, '#');
getline(inFile, state, '#');
inFile >> yearestablished;
inFile.ignore();
getline(inFile, phone, '#');
getline(inFile, website, '#');
inFile >> dailyfee;
inFile.ignore();
inFile >> sqyards;
inFile.ignore();
inFile >> hikingtrails;
inFile.ignore();
inFile >> skiing;
inFile.ignore();
inFile >> wildernesscamp;
inFile.ignore();
inFile >> canoing;
inFile.ignore();
inFile >> kayaking;
inFile.ignore();
inFile >> guidedtours;
inFile.ignore();
inFile >> allseason;
inFile.ignore();
getline(inFile, famousfor);
} inFile.close();
}
system("pause");
return 0;
}
#包括
#包括
#包括
#包括
#包括
使用名称空间std;
int main()
{
字符串parkname=“”;
字符串城市=”;
字符串状态=”;
字符串phone=“”;
字符串网址=”;
字符串“”;
int=0;
双倍日费=0;
整数平方码=0;
char-hikingtrails='';
char='';
char WildernsCamp='';
碳独木舟=“”;
皮划艇='';
char guidedtours='';
char-allseasure='';
河流充填;
infle.open(“nationalparks.txt”);
if(infle.is_open())
{
滑雪;
infle.ignore();
内嵌>>WildernsCamp;
infle.ignore();
填充>>独木舟;
infle.ignore();
内嵌>>皮划艇;
infle.ignore();
内嵌>>指南教程;
infle.ignore();
填充>>四季;
infle.ignore();
getline(因填充而出名);
而(!infle.eof())
{
库特·威尔德内斯坎普;
infle.ignore();
填充>>独木舟;
infle.ignore();
内嵌>>皮划艇;
infle.ignore();
内嵌>>指南教程;
infle.ignore();
填充>>四季;
infle.ignore();
getline(因填充而出名);
}infle.close();
}
系统(“暂停”);
返回0;
}
我希望用户能够输入例如阿拉斯加,并且只显示那些公园。我认为字符串搜索会起作用,但我对如何做有点困惑 在开始添加附加功能之前,首先修复所有现有的bug总是一个好主意。你可以从开始。要搜索某个东西,它需要在一个容器中。因此,将记录添加到
std::vector
中。然后查看std::find_if()