[C,C++] porownywanie obrazow
Ostatnio zmodyfikowano 2016-02-02 13:32
aaadam Temat założony przez niniejszego użytkownika |
[C,C++] porownywanie obrazow » 2016-02-02 11:43:12 Witam, napisałem aplikacje która porównuje mi dwa pliki, z założenia maja to być pliki bmp, dla małych plików program działa poprawnie, ale chodzi mi o porównywanie dwóch screeenshotow i program źle działa dla dużych plików a o to kod:
#include <fstream> #include <iostream> #include <string>
using namespace std;
int main( int argc, char ** argv ) { bool app_succeed = true; string tmp1, tmp2; short int bmp_heading_size = 54; string name_file_1, name_file_2; name_file_1 = argv[ 1 ]; name_file_2 = argv[ 2 ]; cout << "input files : " << endl; cout << name_file_1 << endl; cout << name_file_2 << endl; fstream plik1, plik2; plik1.open( name_file_1, std::ios::in ); plik2.open( name_file_2, std::ios::in ); if( plik1.good() && plik2.good() ) { plik1.seekg( bmp_heading_size, ios::beg ); plik2.seekg( bmp_heading_size, ios::beg ); while( !plik1.eof() &&!plik1.eof() ) { getline( plik1, tmp1 ); getline( plik2, tmp2 ); if( tmp1 != tmp2 ) app_succeed = false; } plik1.close(); } else { cout << "Error! can not open a file!" << endl; return 3; } if( app_succeed ) { cout << "files are same" << endl; return 1; } else { cout << "files are not same" << endl; return 0; } }
proszę o pomoc. |
|
Monika90 |
» 2016-02-02 11:47:49 Bitmapy należy otwierać w trybie binarnym. |
|
aaadam Temat założony przez niniejszego użytkownika |
» 2016-02-02 11:58:30 chyba działa, dzięki. Może ktoś wyjaśnić dlaczego bitmapy trzeba otwierać w trybie binarnym ?? |
|
Szadziu |
» 2016-02-02 13:11:18 ponieważ są to pliki binarne |
|
aaadam Temat założony przez niniejszego użytkownika |
» 2016-02-02 13:32:17 oki dzięki, zamykam temat |
|
« 1 » |