#include <cstdlib>
#include <iostream>
#include <fstream>
using namespace std;
int main(int argc, char *argv[])
{ if (argc != 3) {
cerr << "Sintassi: 02 FileName1 FileName2" << endl;
system("pause");
return 1;
}
ifstream file1(argv[1], ios::binary);
if ( !file1 ) {
cerr << "Impossibile aprire il file " << argv[1] << endl;
system("pause");
return 2;
}
ifstream file2(argv[2], ios::binary);
if ( !file2 ) {
cerr << "Impossibile aprire il file " << argv[2] << endl;
file2.close();
system("pause");
return 3;
}
char c1, c2;
enum {diversi, uguali} Risultato = diversi;
while ( file1 && file2 ) {
c1 = file1.get();
c2 = file2.get();
if (c1 == c2)
Risultato = uguali;
else {
Risultato = diversi;
break;
}
}
if (Risultato == uguali)
cout << "Non sono state riscontrate differenze" << endl;
else cout << "I due file sono differenti" << endl;
file1.close();
file2.close();
system("pause");
}
Confronto di due file
Programma che confronta due file qualsiasi specificati nella linea di comando: dal menu Esegui selezionare il comando Parametri > nella finestra di dialogo, nella casella di testo: Parametri da passare al programma scrivere il percorso e il nome completo dei due file separati da uno spazio.
In ambiente Unix/Linux basta specificare i nomi del file da linea di comando, ad es: ./programma file1 file2