PDA

View Full Version : امکان مقایسه بین دو فایل و به دست آوردن اختلاف آنها



Maryam_y_m
یک شنبه 20 خرداد 1386, 18:57 عصر
آیا در vb.net این امکان وجود دارد که بتواند دو فایل را با هم مقایسه کرده و اختلاف این دو را برگرداند؟

ghafoori
یک شنبه 20 خرداد 1386, 20:44 عصر
از چه نظر دوست عزیز حجم محتوا نام نوع هر کدام راهی دارد شما فایل خاصی مد نظر دارید بیشتر توضیح دهید

Maryam_y_m
دوشنبه 21 خرداد 1386, 10:49 صبح
اختلاف از نظر محتوا مد نظر من هست و این فایلها فایل Log هستند که هرکدام حدود یک گیگابایت حجم دارند و در هر سطر آنها یک رکورد موجود است که در هر فایل به طور متوسط 6.000.000 رکورد هست. رکوردهایی را که در فایل دوم هست و در فایل اول نیست استخراج کنم.

MAiLDEREMi
دوشنبه 21 خرداد 1386, 12:07 عصر
این در صورتی امکان داره که فایل رو به صورت Binary لود کنید و هر کدام از byte های دریافت شده رو نظیر به نظیر مقایسه کنید.

VB.Net
به زبان ساده تر یک حلقه نوشته و دو فرمان دریافت فایل به صورت Binary رو درون آن قرار می دیم. حلقه رو از 1 تا FileLen("C:\a.dat") 'File1 size و FileLen("C:\a.dat") 'File1 size می دیم. یک شرط قرار می دیم که اگر دو byte دریافتی یکی بودند برای مثال Msgbox("1-1) 'Info رو به ما نشون بده.

C



main()
{

char buffer[100];
// char myrec[100];
FILE *Nf;
char *c;
char *myrec[10];
int i = 0, j;

Nf = fopen("wthr.data", "r");

do {
c = fgets(buffer, 100, Nf);
myrec[i] = buffer;
printf("myrecord is : %s \n", myrec[i]);
i = i + 1;

if (c != NULL)
printf("%s", buffer);
} while (c != NULL);

for (j = 0; j < 10; j++) {
printf("records are : %s \n", myrec[j]);
}

fclose(Nf);

}



یا



ifstream outStaffID("filename.dat",ios::binary|ios::in);
if (!outStaffID)
{
cerr<<"File could not be created"<<endl;
exit(1);
}
//outStaffID.seekg(0);
outStaffID.read(reinterpret_cast<char*>(&StaffReg), sizeof(StaffPersonal));
while(outStaffID && !outStaffID.eof())
// {
for (i=0; i<50; i++)
{
outStaffID.read(reinterpret_cast<char*>(&StaffReg), sizeof(StaffPersonal));
cout<<StaffReg.getStaffID();
}
outStaffID.close();



VB.Net



Dim objword As Word.Application
objword = CreateObject("Word.Application")
With objword
.Documents.Open("C:\Seshu is a bad boy.doc")
.ActiveDocument.Compare("C:\Seshu is a good boy.doc")
.ActiveDocument.SaveAs("C:\Seshu is a good11111 boy.doc")
.ActiveDocument.Close()
End With



VB Script



open TxtFile1.csv
for each line in file
save visit ID into array
close TxtFile1.csv
for each visit ID in array
search txtFile2 for match
if match
save entry into new file