求在二进制文件中超快速查找字符串的算法(或思路)

sdpigpig 2003-09-02 05:33:31
程序需要在一些30M左右大小的二进制文件中找到一些字符片段,如下:
> \cl_lw\name\c\1\
主要通过找到"\name\"这个关键字,再求它后边的讯息。请问有什么方法可以很高速的找完整个文件。现在我用的方法是
get File,,array
再用循环找array内的值,速度极慢。
...全文
138 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
rainstormmaster 2003-09-03
  • 打赏
  • 举报
回复
我想用instr查找0,把0替换成"",然后在查找1,替换成"".估计剩下得就是ascii了
不知道对不对?:)

有创意,:)










恐怕不行
yunfeng007 2003-09-03
  • 打赏
  • 举报
回复
用api函数读文件,多线程处理。
sdpigpig 2003-09-03
  • 打赏
  • 举报
回复
用什么函数呢?
sdpigpig 2003-09-03
  • 打赏
  • 举报
回复
我需要的主要是速度上的技巧。我本身是以循环使用aArray(n) > 32 And aArray(n) < 127进行"过滤"的,但性能好像很差
踏平扶桑 2003-09-02
  • 打赏
  • 举报
回复
我想用instr查找0,把0替换成"",然后在查找1,替换成"".估计剩下得就是ascii了
不知道对不对?:)
MSSQL 2003-09-02
  • 打赏
  • 举报
回复
大于64K的内容。
不要一次读出来。
你可以一次读一部分。
也可以一行一行的读。
jlum99 2003-09-02
  • 打赏
  • 举报
回复
大哥,你要搜的东西是ASCII啊。。。。。。其他你管他干什么??
yunfeng007 2003-09-02
  • 打赏
  • 举报
回复
帮你up
sdpigpig 2003-09-02
  • 打赏
  • 举报
回复
给我个好的源码看看吧。
踏平扶桑 2003-09-02
  • 打赏
  • 举报
回复
那就先需要你过滤一边了,然后在搜索
sdpigpig 2003-09-02
  • 打赏
  • 举报
回复
主要是几十M,ASCII的分布不到1%的,有没些好的算法可以先把非ASCII的给排除掉先。
hxy2003 2003-09-02
  • 打赏
  • 举报
回复
UP
jlum99 2003-09-02
  • 打赏
  • 举报
回复
你要查找的是ASCII字符,管他是不是2进制的文件,当TXT文件搜呗
sdpigpig 2003-09-02
  • 打赏
  • 举报
回复
那句的二进制文件不能被复制上去。总之"\cl_lw\name\c\1\"前后都是二进制的

7,789

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧