c++中如何对TXT文件进行关键字查找啊~
就是我有一个TXT文件 里面的数据都是有规律的放的(譬如 航空公司的航班信息) ,每一行放一组数据
然后我现在要按照1-2个关键字查找到某一个或几个确定的行然后对这一行的数据进行删除或修改操作
应该怎么弄啊~~~
。。。周4老师就要验收程序了~ 啊啊啊啊啊
[解决办法]
1
将文件内容读入内存中,再在内存中查找
2
将文件内容读入数据库,再在数据库中查找
[解决办法]
//打开txt文件 航班信息1.txt
//打开用于保存处理结果的文件 航班信息2.txt
while(/*读取到一个完整的航班信息*/)
{
//判断关键字 得出是不是你要处理的记录
//不是你要修改的记录 直接写入航班信息2.txt
//是要修改的记录 修改完写入航班信息2.txt
//是要删除的记录 什么都不做
}
//关闭航班信息1.txt
//关闭航班信息2.txt
//连接数据库
create database 航班信息库
create table 航班信息( ......)
//打开txt文件 航班信息1.txt
while(/*读取到一个完整的航班信息*/)
{
//insert into 航班信息 values (航班信息的第1个字段,航班信息的第2个字段,....)
}
//关闭航班信息1.txt
update 航班信息 set 航班信息的某个字段=你要的值 where 航班信息的某个字段 =(或者like等等) 你的关键字
delete from 航班信息 where 航班信息的某个字段 =(或者like等等) 你的关键字
//打开用于保存处理结果的文件 航班信息2.txt
select * from 航班信息
//逐条写入闭班信息2.txt
//关航闭班信息2.txt
name:xxx sex:ooo
sscanf("%[*^:]:%[^ ] %[*^:]:%[^ ] ",strName,strSex);
string text;
while (infile.good())
{
getline(infile,text,','); //以逗号为分隔符
getline(infile,text,'\n');//以回车为分隔符
getline(infile,text); //不写默认为回车分隔符
//上面的意思就是读文件,遇到分隔符就停止
//比如以逗号为分隔符则123,333,444 就将123传给string类型的text
}
//当然上面的不完整,不过大致意思表达了