| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1173 人关注过本帖
标题:怎么查找到二进制文件中的一个“非0”的字节
只看楼主 加入收藏
yuhiyu
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-11-23
收藏
 问题点数:0 回复次数:3 
怎么查找到二进制文件中的一个“非0”的字节
怎么实现,在HEX编辑器查找中,得到一个字节,该字节的值非0。
"if curren_byte=0 then next_byte"
一个一个字节比对,效率太低了,100M的文件,如果所有字节都是0,最后一个字节非0,那么要循环100000000次。
有没更好的方法?
搜索更多相关主题的帖子: 二进制 非0 字节 文件 
2008-01-02 21:17
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
学过排序没?

既然你数据没有排序,自然要循环100000000次,不然怎么找到那个非0字节?
2008-01-02 22:10
yuhiyu
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-11-23
收藏
得分:0 
逐个比对是必须的。我没说清楚,我指的是那种方法执行效率低。

Dim a$, b$, i%
a = String(10000000, 0)
b = String(10000000, 0)
For i = 1 To 10
    If a = b Then Debug.Print i
Next

比如这样的操作就能瞬间比对完100000000个字节,它用汇编当然快
我是说,有没直接的命令或者API来完成查找任务。
2008-01-02 23:14
yuhiyu
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-11-23
收藏
得分:0 
好了,基本解决了
2008-01-02 23:24
快速回复:怎么查找到二进制文件中的一个“非0”的字节
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.053964 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved