HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2006
1121
へいはいほデータが同一かどうか3解決


へいはいほ

リンク

2006/11/21(Tue) 11:57:40|NO.3680

質問です
あるデータ A.dat と B.dat
が同じかどうか調べたいんですけど
どうやればいいのでしょうか



この記事に返信する


kanzaki

リンク

2006/11/21(Tue) 16:54:26|NO.3682

具体的なここまで作ったというスクリプトが無いので、方法だけ説明申し上げます
A.datと、B.datとはファイルでしょうか?

バッファ用の変数を2つ確保します。(sdim)
それぞれのバッファに、それぞれのファイルを少し読み込みます(同一インデックス且つサイズにて)。(bload)
読み込んだサイズ分だけ、その変数の先頭からpeekしたものが同一化チェックします。(repeat,if,peek,loop)
ファイルの読み込みが出来なくなるまで繰り返します。(exist,bloadのstrsize)
また、比べる前にファイルサイズが違ったら違うファイルでしょうね…

hspextを使用して、
pipeexecなどによりfc.exeを使用するのもユニークで面白いかと思います。



S

リンク

2006/11/21(Tue) 20:12:44|NO.3688

#define datacmp(%1,%2,%3,%4) p = varptr(%2), varptr(%3), %4 : %1 = callfunc(p, varptr(cmp), 3)
cmp = $8bec8b55,$7d8b0875,$104d8b0c,$f3fc9c66,$66c18ba6,$c35d9d /* push ebp mov ebp, esp mov esi, [ebp + 8] mov edi, [ebp + 12] mov ecx, [ebp + 16] pushf cld repe cmpsb mov eax, ecx popf pop ebp ret */ #define FILESIZE 3 var1 = "ABC" var2 = "ABC" gosub *jmp var1 = "ABC" var2 = "ADC" gosub *jmp stop *jmp datacmp ret, var1, var2, FILESIZE if ret : dialog "データが違います [ " + var1 + " " + var2 + " ]" return



へいはいほ

リンク

2006/11/22(Wed) 18:32:49|NO.3703

なるほど
ファイルのサイズで調べれば簡単でいいですね
ありがとうございます



ONION software Copyright 1997-2023(c) All rights reserved.