社区
C语言
帖子详情
对文件内的字符串检索
FLY_FOX
2000-12-29 03:31:00
请高手指点,50分奉上。
请问如何打开一个文件并对其中的字符串进行检索?如:
FILE *FP;
if(!(fp=fopen("book.txt","rb"))){
exit(1);
}
else
{
//进行字符串检索,如:要找出单词FILE,然后输出
}
...全文
182
10
打赏
收藏
对文件内的字符串检索
请高手指点,50分奉上。 请问如何打开一个文件并对其中的字符串进行检索?如: FILE *FP; if(!(fp=fopen("book.txt","rb"))){ exit(1); } else { //进行字符串检索,如:要找出单词FILE,然后输出 }
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hyqryq
2000-12-30
打赏
举报
回复
用字符串匹配算法或KMP算法。
FLY_FOX
2000-12-29
打赏
举报
回复
OK,此程序弄得我头都大了,主要是内容太多,关系到样式、参数的分离等等。具体就不说了。
50分太少--另行加分。
如果写出的文本内容太多(注意:不是在WINDOWS的窗口中,类似DOS下调用GRAPHICS.H吧)
用键盘实现文本的滚动,应该如何做?
我曾经考虑过用指针来做到这一点,但不知道对速度会不会有影响?
ed9er
2000-12-29
打赏
举报
回复
int fd, r;
char c, *p;
char *str = "abcac"; // as you wish
int next[] = { -1, 0, 0, 0, 1}; // KMP
if( -1 == (fd=open( "book.txt", O_RDONLY )) )
exit(1);
r = read( fd, &c, 1 );
p = str;
while( r ) {
if( *p == c ) {
p++;
if( !*p ) {
printf( "found : %s\n", str );
break;
}
}
else if( p != str ) { // do not use "-1"
p = str + next[p-str];
continue;
}
r = read( fd, &c, 1 );
}
//如果str里面有中文的话,嘿嘿,就要拆成两个byte来做next数组,看一下数据结构书吧,上面有做next的程序,懒得找给你了
lu_yb
2000-12-29
打赏
举报
回复
如果有中文要用unsigned char来读取,如果读到
的第八位置位了,也就是其值大于128就是中文了,
这时要和下一字节一起两位一起判断.
ColdSpring
2000-12-29
打赏
举报
回复
if(!(fp=fopen("book.txt","rb"))){
exit(1);
}
else
{
while(文件结束)
{ 文件放入字符串str1}
if (strstr(str1,"查询子串")!=NULL) 存在此子串;
else 没有;
}
中文一样的,中文部过是双字节的字符而已
FLY_FOX
2000-12-29
打赏
举报
回复
如果其中有中文?
chenf
2000-12-29
打赏
举报
回复
保证是文本文件!
CFile f("book.txt",CFile::modeRead);
CArchive a(&f,CArchive::load);
CString s;
DWORD l=f.GetLength();
a.Read(s.GetBufferSetLength(l),l);
int pos=s.Find("FILE");
ColdSpring
2000-12-29
打赏
举报
回复
我来试一式
FLY_FOX
2000-12-29
打赏
举报
回复
To ColdSpring:
我实验过,不过出了问题,请给出一段源代码好吗?
ColdSpring
2000-12-29
打赏
举报
回复
先把文件内容读出到一个字符串中,然后再检索
Android通过webservice连接Sqlserver实例
2. 数据库连接:在服务器端,配置SQLServer数据库连接
字符串
,确保服务器允许外部访问,并使用ADO.NET或其他数据库访问技术建立数据库连接。 步骤二:Android客户端准备 1. 添加依赖:在Android项目中,添加必要的...
文件
夹批量
字符串
检索
工具
文件
夹批量
字符串
检索
工具是一种使用于在指定
文件
夹中批量搜索指定
字符串
的工具。它可以帮助用户快速找到包含特定
字符串
的
文件
,并提供相应的搜索结果。
文件
类型过滤:用户可以选择只在特定类型的
文件
中进行搜索,...
Python
字符串
检索
用于
检索
指定
字符串
在另一个
字符串
中出现的次数。如果
检索
的
字符串
不存在,则返回0,否则返回出现的次数。 语法: str.count(sub[,start[,end]]) str:表示原
字符串
。 sub:表示要
检索
的
字符串
。 start:可选,...
检索
字符串
如果
检索
的
字符串
不存在,则返回-1,否则返回首次出现该子
字符串
时的索引。print('判断
字符串
“',str1,'”是否以.com结尾,结果为:',str1.endswith('.com'))print('判断
字符串
“',str1,'”是否以@符号开头,结果为...
LabVIEW中对
字符串
数据进行关键词
检索
,LabVIEW的字符搜索功能,关键词不在
字符串
开头也能
检索
(原创)
在LabVIEW中如何
检索
字符串
中的关键词呢?其实用LabVIEW自带的控件就能实现这一操作,下面将详细介绍如何实现 话不多说,先上程序框图 下面一一介绍用到的控件:
字符串
输入控件 在前面板中右击,新式>
字符串
与...
C语言
70,034
社区成员
243,244
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章