如何比较两个byte类型的数组?
现有两个程序.
一个程序附在另一个程序的开头.
现在我把两个程序都读入两个byte类型的数组.
怎样可以比较那两个byte数组阿?
[解决办法]
dim a() as byte,b() as byte,strTmp as string ,strTemp as string
open "c:\test.exe " for binary as #1
redim a(lof(1))
get #1,,a
close #1
open "c:\test1.exe " for binary as #1
redim b(lof(1))
get #1,,b
close #1
strTmp = strconv(a,64)
strTemp = strconv(b,64)
if strtemp=strtmp then msgbox "相等 "
[解决办法]
这样比较似乎有些不妥哟,有些字节型是不能表示为字符串型的,
个人认为还是应该先比较数组的大小,如果大小一致,
再逐字节比较.
或是逐字节计算二进制数组的MD5值和CRC32值,
如果两个数组的MD5的CRC32的值都相等的话,
则表示两数组内容相同.
这样是比较安全不过一般情况下我那个也不会出什么问题
当然首先你得判断数组是不是一样大