c++ txt文件搜索关键字
从txt文件搜索关键字然后删除关键字所在的一行我要搜索编号数据,然后删掉编号那一行test.txt文本内容://编号书名出版社作者001海底两万里北京出版社儒勒·凡尔纳0...
从txt文件搜索关键字 然后删除关键字所在的一行
我要搜索编号数据,然后删掉编号那一行
test.txt文本内容:
// 编号 书名 出版社 作者
001 海底两万里 北京出版社 儒勒·凡尔纳
002 格列佛游记 北京出版社 乔纳森·斯威夫特 展开
我要搜索编号数据,然后删掉编号那一行
test.txt文本内容:
// 编号 书名 出版社 作者
001 海底两万里 北京出版社 儒勒·凡尔纳
002 格列佛游记 北京出版社 乔纳森·斯威夫特 展开
展开全部
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
struct
{
char no[10];
char name[20];
char publisher[20];
char author[20];
}book;
void main(void)
{
char str[100]="D:\\1.txt";
fstream f1, f2;
f1.open(str, ios::in);
strcpy(str, "D:\\2.txt");
f2.open(str, ios::out);
if(!f1.is_open()||!f2.is_open())
{
cout<<"文件打开失败!"<<endl;
exit(1);
}
cout<<"输入要删除的编号: ";
cin>>str;
while(f1>>book.no>>book.name>>book.publisher>>book.author)
{
if(!strcmp(book.no, str))
continue;
else
f2<<book.no<<' '
<<book.name<<' '
<<book.publisher<<' '
<<book.author<<' '
<<endl;
}
f1.close();
f2.close();
cout<<"完成"<<endl;
}
更多追问追答
追问
为什么我搜索001 他就给我002
还有1.txt没有删除002这行信息
追答
没看到你要查询的功能,还有就是删除后的文件在2.txt
话说你真的有看过代码吗?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询