Zapisywanie zmiennych w pliku .txt
Ostatnio zmodyfikowano 2016-01-17 12:09
Fistach Temat założony przez niniejszego użytkownika |
Zapisywanie zmiennych w pliku .txt » 2016-01-16 12:52:09 #include<iostream> #include<fstream>
using namespace std;
int main() { string nazwa; int licznik = 1; int a; int aa; int ab; int b; int c; int ca; int d; int e; cout << "Podaj nazwe zastepu "; cin >> nazwa; cout << "1. Obecnosc na zbiorkach "; cin >> a; cout << "1.1 za mundur "; cin >> aa; cout << "1.2 Proporzec na zbiorce +1p "; cin >> ab; cout << "2. Stopnie " << endl << "Druch 15pk" << endl << "mlodzik 25pk" << endl << "wywiadowca 30pk" << endl << "cwik 35pk" << endl << "HO 100pk " << endl; cin >> b; cout << "3. Obecnosc na wyjazdach "; cin >> c; cout << "3.1 Proporzec na wyjazdach "; cin >> ca; cout << "4. Obecnosc na mszy harcerskiej "; cin >> b; cout << "5. Pochwala/Nagana "; char * zastep = "Zastep "; char * obecnosc = "1.Obecnosc na zbiorkach "; char * zamundur = "1.1 Za mundur "; char * proporzeczb = "1.2 Proporzec na zbiorce "; char * stopnie = "2. Stopnie "; char * obecnoscwyj = "3. Obecnosc na wyjazdach "; char * proporzecw = "3.1 Proporzec na wyjazdach "; char * obecnoscm = "4. Obecnosc na mszy harcerskiej "; char * pona = "5. Pochwala/Nagana "; ofstream zapis( "dane.txt" ); zapis << zastep << nazwa << endl; zapis.close(); delete * zastep; zapis.open( "dane.txt", ios_base::app ); zapis << obecnosc << a << " pk " << endl; zapis.close(); delete * obecnosc; zapis.open( "dane.txt", ios_base::app ); zapis << zamundur << aa << " pk" << endl; zapis.close(); delete * zamundur; zapis.open( "dane.txt", ios_base::app ); zapis << proporzeczb << ab << " pk" << endl; zapis.close(); delete * proporzeczb; zapis.open( "dane.txt", ios_base::app ); zapis << stopnie << b << " pk" << endl; zapis.close(); delete * stopnie; zapis.open( "dane.txt", ios_base::app ); zapis << obecnoscwyj << c << " pk" << endl; zapis.close() delete * obecnoscwyj; zapis.open( "dane.txt", ios_base::app ); zapis << proporzecw << ca << " pk" << endl; zapis.close() delete * proporzecw; zapis.open( "dane.txt", ios_base::app ); zapis << obecnoscm << d << " pk" << endl; zapis.close() delete * obecnoscm; zapis.open( "dane.txt", ios_base::app ); zapis << pona << e << " pk" << endl; zapis.close() delete * pona; return 0; }
to jest część kodu która mi nie działa jak mniej zapisze to działa jak zrobić by zapisywało więcej? Proszę o pomoc. |
|
mateczek |
» 2016-01-16 13:51:56 trochę dziwny kod #include <iostream> #include<string> #include<fstream> using namespace std;
int main() { fstream plik; plik.open( "d:/test.txt", ios_base::app ); if( !plik.good() ) { cout << "error" << endl; return 0; } string napis; int liczba; while( 1 ) { cout << "Podaj nazwe zastepu\n0=koniec wpisywania" << endl; getline( cin, napis ); if( napis == "0" ) break; plik << "nazwa zatepu= " << napis << endl; cout << "1. Obecnosc na zbiorkach " << endl; cin >> liczba; plik << "Obecnosc na zbiorkach = " << liczba << endl; cout << "1.1 za mundur "; cin >> liczba; plik << "Za mundur = " << liczba << endl; cin.clear(); cin.sync(); } plik.close(); }
delete się używa gdy dynamicznie alokujesz pamięć!!! (jest "new" ma być "delete") |
|
Fistach Temat założony przez niniejszego użytkownika |
» 2016-01-16 15:36:32 dałem delete bo nie wiem co zrobić aby zapisał dane wszystkie w pliku bo zapisuje mi tylko pare takie bloki kodu zapis.open( "dane.txt", ios_base::app ); zapis << obecnosc << a << " pk " << endl; zapis.close();
zapis.open( "dane.txt", ios_base::app ); zapis << zamundur << aa << " pk" << endl; zapis.close();
zapis.open( "dane.txt", ios_base::app ); zapis << proporzeczb << ab << " pk" << endl; zapis.close();
Ma zapisywac iformaje wplku txt Prosze pomoc |
|
mateczek |
» 2016-01-17 11:51:41 http://cpp0x.pl/kursy/Kurs-C++/Obsluga-plikow/3051. plik otwierasz raz a nie co chwila !!! 1.1 sprawdź poprawność otwacja pliku!!! fstream plik; plik.open( "d:/test.txt", ios_base::app ); if( !plik.good() ) { cout << "error" << endl; return 0; }
2. sprawdzaj poprawność wczytanych danych z klawiatury 2.1. Czyść strumień "cin" albo gdy fail() albo profilaktycznie !!! |
|
mateczek |
» 2016-01-17 12:09:34 masz tu kod programu !!! I zanim zaczniesz marudzić skopiuj wklej i uruchom!!! wprowadź kilka zastępów i zobacz plik wyjściowy !!! #include <iostream> #include<string> #include<fstream> #include<vector> using namespace std;
int main() { fstream plik; plik.open( "d:/test.txt", ios_base::app ); if( !plik.good() ) { cout << "error" << endl; return 0; } string napis; vector < string > daneDoPliku; while( 1 ) { daneDoPliku.clear(); cin.clear(); cin.sync(); cout << "Podaj nazwe zastepu\n0=koniec wpisywania" << endl; getline( cin, napis ); if( napis == "0" ) break; if( cin.fail() ) { cout << "cin Error" << endl; continue; } daneDoPliku.push_back( "nazwa zastepu: " + napis ); cout << "1. Obecnosc na zbiorkach " << endl; getline( cin, napis ); if( cin.fail() ) { cout << "cin Error" << endl; continue; } daneDoPliku.push_back( "obecnosc na zbiurkach%: " + napis ); cout << "1.1 za mundur "; getline( cin, napis ); if( cin.fail() ) { cout << "cin Error" << endl; continue; } daneDoPliku.push_back( "za mundur zaplacono: " + napis ); for( string s: daneDoPliku ) { plik << s << endl; } plik << "--------------------------------------------------" << endl; } plik.close(); } |
|
« 1 » |