Resetowanie operatora wczytywanie z pliku ">>"
Ostatnio zmodyfikowano 2016-03-23 12:44
jaśkoo Temat założony przez niniejszego użytkownika |
Resetowanie operatora wczytywanie z pliku ">>" » 2016-03-23 12:20:20 Witajcie, za zadanie mam napisać program, który wczytuje dane liczbowe z jednego pliku i zapisuje do drugiego w postaci 3 kolumn. Wiem, że można to zrobić na dynamicznie lokowanej tablicy, albo na zwykłym liczniku, ale teraz chciałem zrobić to w ten sposób. A moje pytanie dotyczy tego czy operator wczytywania z pliku ">>" da się w jakiś sposób zresetować, zmusić go do powrotu do początku pliku, czy konieczne jest takie rozwiązanie jak u mnie? Jeśli macie jakieś inne pomysły na rozwiązanie tego zadanie to też chętnie o tym poczytam. :) #include <iostream> #include <fstream> #include <cstdlib>
using namespace std;
void kolumny() { fstream plik; plik.open( "liczby.dat", ios::in ); if( plik.good() == false ) { cout << "Nie odnaleziono pliku!"; exit( 0 ); } else { fstream plik2; plik2.open( "kolumny.txt", ios::out ); int pomocnicza; int licznik = 0; while( !plik.eof() ) { plik >> pomocnicza; licznik++; } plik.close(); plik.open( "liczby.dat", ios::in ); int tab[ licznik ]; while( !plik.eof() ) { for( int i = 1; i <= licznik; i++ ) { plik >> tab[ i ]; plik2 << tab[ i ] << " "; if( i % 3 == 0 ) { plik2 << endl; } } } plik.close(); plik2.close(); } }
int main() { kolumny(); cout << "DONE!"; return 0; }
|
|
carlosmay |
» 2016-03-23 12:44:18 |
|
« 1 » |