İki Dosyayı Bayt Bayt Karşılaştırma
-
int main(int argc, char **argv)
{
FILE *fp1,*fp2;
unsigned size1=0,size2=0;
char *Dosya1Veri,*Dosya2Veri,esitlik=1;
if((fp1=fopen("dosya1","rb")) !=NULL)
{
fseek(fp1,0,SEEK_END);
size1=ftell(fp1);
Dosya1Veri=(char *)malloc(size1);
rewind(fp1);
fread(Dosya1Veri,1,size1,fp1);
fclose(fp1);
}
else
printf("dosya1 bulunamadi\n");if((fp2=fopen("dosya2","rb")) !=NULL)
{
fseek(fp2,0,SEEK_END);
size2=ftell(fp2);
Dosya2Veri=(char *)malloc(size2);
rewind(fp2);
fread(Dosya2Veri,1,size2,fp2);
fclose(fp2);
}
else
printf("dosya2 bulunamadi\n");if(size1 != size2)
esitlik=0;
while(size1)
{
if(Dosya1Veri[size1-1] != Dosya2Veri[size1-1])
esitlik=0;
else
--size1;
}
printf("%s",esitlik ? "esit" : "esit degil");
free(Dosya1Veri);
free(Dosya2Veri);
getchar();
return 0;
}aLman a kapak olsun MD5 kesmiyormuş kendisini.
-
@1 adam kızmış beyler
-
XpertVision bunu yazdı:
-----------------------------
@1 adam kızmış beyler
-----------------------------
yok be hacı o an aklıma gelmedi takıldık bi md5 e ,hem belki lazım olur birilerine unutmuşum while a size lerin hangisi küçükse onu koymak daha güvenli olur.edit :
int i=0;
if(size1 != size2)
{
esitlik=0;
if(size1 > size2)
i=size2;
else
i=size1;
}while(i)
{
if(Dosya1Veri[i-1] != Dosya2Veri[i-1])
{
esitlik=0;
break;
}
else
--i;
}
