Tworzenie prostych baz danych
Ostatnio zmodyfikowano 2012-04-21 12:44
pekfos |
» 2012-04-20 21:25:05 jak zapiszesz, tak bedzie. Rozszerzenie nie ma tu żadnego znaczenia. |
|
Temes Temat założony przez niniejszego użytkownika |
» 2012-04-20 21:51:50 Heh, działa! :3 Super... Jedyne co jeszcze mi zostało to fakt, iż nie rozumiem kilku części. Mianowicie: { std::ofstream out( "nazwapliku.txt" ); if( out.good() == true ) { std::string line; line = "Tutaj wstaw tekst do zapisu.\n"; line += "Moze on zawierac kilka linii.\n"; line += "Tutaj dodaj kolejne dane do zapisu.\n"; out << line; out.close(); } }
{ std::string line; std::ifstream in( "nazwapliku.txt" ); if( in.good() == true ) { while( getline( in, line ) ) { func( line ); } in.close(); } }
Zapis czyli zapisuję do pliku "nazwapliku.txt" dane które są w "line"? Odczyt czyli uzytkownik widzi to co zostało zapisane, tak? tam gdzie jest //wyswietlenie tekstu muszę coś pisać czy to juz działa samo? Sorki że tak piszę, ale chce mieć wszystko jasno wytłumaczone, bo zauważyłem że C++ to jednak wiele rzeczy robi inaczej niż powinno, jest to ciężki język, jak dla mnie, ale dzięki nie mu spełnię marzenia. |
|
Temes Temat założony przez niniejszego użytkownika |
» 2012-04-21 08:01:34 Trochę się pobawiłem, działało ale nie do końca poprawnie... #include <fstream> #include <string> #include <windows.h> #include <conio.h> #include <iostream>
int main() { std::fstream HP; HP.open( "HP.txt", std::ios::in | std::ios::out ); if( HP.good() == true ) { std::string napis; HP >> napis; std::cout << "Aktualna wartosc HP: " << napis << std::endl; std::cout << "Podaj nowa wartosc HP: "; std::cin >> napis; HP << napis; HP.close(); } getch(); return 0; } Jaki jest błąd? Bo wyświetla to co jest w "HP.txt" , ale z kolei nie chce nadpisać wartości... |
|
Temes Temat założony przez niniejszego użytkownika |
» 2012-04-21 12:44:48 I kolejny problem... Działa wszystko - jest ok... #include <fstream> #include <iostream> #include <conio.h> #include <windows.h>
unsigned long long Miejsce1; unsigned long long Miejsce2; unsigned long long Miejsce3; unsigned long long Miejsce4; unsigned long long Miejsce5;
void func( std::string line ) { std::cout << "Aktualna lista wynikow:\n"; std::cout << "Miejsce 1: " << Miejsce1 << "\n"; std::cout << "Miejsce 2: " << Miejsce2 << "\n"; std::cout << "Miejsce 3: " << Miejsce3 << "\n"; std::cout << "Miejsce 4: " << Miejsce4 << "\n"; std::cout << "Miejsce 5: " << Miejsce5 << "\n"; }
int main() { std::ifstream in( "nazwapliku.txt" ); in >> Miejsce1; in >> Miejsce2; in >> Miejsce3; in >> Miejsce4; in >> Miejsce5; std::cout << "Aktualna lista wynikow:\n"; std::cout << "Miejsce 1: " << Miejsce1 << "\n"; std::cout << "Miejsce 2: " << Miejsce2 << "\n"; std::cout << "Miejsce 3: " << Miejsce3 << "\n"; std::cout << "Miejsce 4: " << Miejsce4 << "\n"; std::cout << "Miejsce 5: " << Miejsce5 << "\n"; std::cout << "Miejsce 1 - Wynik: "; std::cin >> Miejsce1; std::cout << "Miejsce 2 - Wynik: "; std::cin >> Miejsce2; std::cout << "Miejsce 3 - Wynik: "; std::cin >> Miejsce3; std::cout << "Miejsce 4 - Wynik: "; std::cin >> Miejsce4; std::cout << "Miejsce 5 - Wynik: "; std::cin >> Miejsce5; system( "cls" ); { std::string line; std::ofstream out( "nazwapliku.txt" ); if( out.good() == true ) { out << Miejsce1; out << Miejsce2; out << Miejsce3; out << Miejsce4; out << Miejsce5; out.close(); } } { std::string line; std::ifstream in( "nazwapliku.txt" ); if( in.good() == true ) { while( getline( in, line ) ) { func( line ); } in.close(); } } getch(); return 0; } Problem polega w linijkach: out << Miejsce1; out << Miejsce2; out << Miejsce3; out << Miejsce4; out << Miejsce5;
W programie wyswietla mi: Miejsce 1: 12345 Miejsce 2: 0 itp. a chciałbym Miejsce 1: 1 Miejsce 2: 2 Mijesce 3: 3 itp. Jak to zrobić? /EDIT Boże... Czasami żal mi siebie samego... std::endl -.- |
|
1 « 2 » |