Błędny odczyt danych z pliku binarnego
Ostatnio zmodyfikowano 2016-12-04 15:29
begginer Temat założony przez niniejszego użytkownika |
Błędny odczyt danych z pliku binarnego » 2016-12-04 15:02:18 Witam, moj program zapisuje losowe wartosci liczb z podanego przedzialu do pliku, w trybie binarnym. Nastepnie go odczytuje, tu jest problem, niezaleznie jak rozne i ile wartosci do pliku zapisze, zawsze odczytuje te same cyfry "0,1,2". Jakies pomysly? #include <random> #include <vector> #include <fstream> #include <iostream> using namespace std; int random_number( int min, int max ) { static default_random_engine e { }; uniform_int_distribution < int > d( min, max ); return d( e ); } int main() { int n; cout << "Podaj dlugosc wektora: "; cin >> n; vector < int > v; for( int i = 0; i < n; i++ ) { v.push_back( random_number( 1, 10 ) ); } cout << endl; ofstream binary( "binarnie.bin", ios::binary ); if( binary ) { for( int i = 0; i < n; i++ ) binary.write( reinterpret_cast < char *>( & i ), sizeof( i ) ); } cout << "Zapisano plik binarnie." << endl; ifstream input( "binarnie.bin", ios::binary ); if( input ) { int i; while( input.read( reinterpret_cast < char *>( & i ), sizeof( i ) ) ) cout << i << " "; } input.close(); cin.ignore( 2 ); }
|
|
pekfos |
» 2016-12-04 15:20:57 for( int i = 0; i < n; i++ ) binary.write( reinterpret_cast < char *>( & i ), sizeof( i ) ); |
A co twoim zdaniem tu zapisujesz? |
|
begginer Temat założony przez niniejszego użytkownika |
» 2016-12-04 15:29:50 Cholera, faktycznie, glupi bląd. Dzieki za pomoc. |
|
« 1 » |