Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem z zapisaem/odczytem z pliku w C++

Ostatnio zmodyfikowano 2011-01-16 14:49
Autor Wiadomość
Zuza
Temat założony przez niniejszego użytkownika
» 2011-01-15 23:38:32
Ale jak to. Wciskasz 1, zeby wczytac z pliku, potem 4 i na ekranie Ci drukuje dane wczytane z pliku? To jakas magia, bo mi to nie dziala :P
w funkcjach odczytu/zapisu pliku struktury masz z indeksem i czy a?

Mi dodawanie dziala jak ta lala, blad o ktorym mowisz pojawial sie zawsze, gdy wpisalam niewlasciwe dane, jesli chodzi o rodzaj zmiennej (np ciag znakow do zmiennej int). Jeszcze nie zrobilam warunkow, co zrobic, jak na przyklad ktos probuje zapisac AAA do nr telefonu ;) To kwestia czasu.
P-26596
dmx81
» 2011-01-15 23:43:58
mam indeksy "a"

robie tak:

4 - wyswietl liste (nic nie wyswielta bo jest pusta - dlatego powinna byc informacja, ze jest pusta)
1 - wczytaj z pliku (powinna byc informacja, ze dane zostaly wczytane pomyslnie )
4 - wyswietl liste ( drukuje sie na ekran lista dokladnie taka jak w pliku)
2 - dodaj osobe - no wlasnie, podam zly typ i program wariuje - trzeba wprowadzic kontrole typu lub zmienic na char - jesli to maja byc znaki tylko drukowane - raz ze przyjmie rozne znaki na siebie, dwa mniej pamieci zajmuje char niz int

jesli jeszcze bardziej chcesz dopracowac program, to dla 6 - sortuj - zapytaj, jak sortowac (wg nazwiska, pensji... niby domyslnie wg nazwiska, ale kto tam wie, moze jak beda szukac w firmie kto najwiecej zarabia, a bedzie ze sto osob ... :) )

aha, i poki co usun osobe robi wczytaj, ale pewnie wiesz ;)
P-26598
Zuza
Temat założony przez niniejszego użytkownika
» 2011-01-15 23:55:20
Co do usuwania -wiem, wiem, w wersji z zapisem w C jest usun zrobione w prowizoryczny sposob, ale to jest jeszcze niedopracowane.
To samo z sortowaniem. Wlasnie po to chcialam przepisac program na C++. Uznalam, ze bedzie letwiej to zrobic, kiedy bede mogla swobodnie operowac na stringach (zapis stringow do pliku w C++ to nei problem, w C juz tak).

Ale co do tego, ze Ci dziala... to istna magia. Mi wczytuje (i wiem, ze to robi, bo wyswietla mi wczytywanie pomyslne, dodalam to jak sugerowales), a potem przy wyswietlanie nie wyswietla bazy (ale wiem, ze funkcja wyswitl sie wlacza, bo wyrzuca: Spis pracownikow, po czym zamiast ich wypisac wraca do menu. Nie rozumiem, dlaczego Ci to dziala :P

Mam dogłębnie zlasowany mózgod zastanawiania się nad tym. Prawdopodbnie coś jest nie tak z pętlą lub/i indeksami w funkcji wczytywania u mnie.

Albo sama już nie wiem, dlaczego Tobie to działa, a mi nie. Moze coś jednak zmodyfikowaleś? Jeśli tak, to proszę wrzuć mi ten działający program, bo ja nie mam pojecia, co jest nie tak.

Wrocę do tego jutro rano, bo dziś już nie mam sił, doprawdy. Dzięki wielkie za pomoc, moze jutro dzięki Twoim postom mnie olśni i naprawię to w 3 minuty.

I na pewno wykorzystam Twoje rady dotyczące programu. To sortowanie, zmiana zmiennej, komunikaty przy wykonaniu funkcji z powodzeniem -to świetne ćwiczenia.

Dzięki i dobranoc :)
P-26599
dmx81
» 2011-01-16 00:06:50
C/C++
void wyswietl() {
    int a;
    cout <<( "Spis pracownikow: " ) << endl;
    for( a = 1; a <=( N - 1 ); a++ ) {
        if( spis[ a ].tel != 0 ) {
            cout << "Pozycja nr: " << a << endl;
            cout << "Imie: ";
            cout << spis[ a ].imie << endl;
            cout << "Nazwisko: ";
            cout << spis[ a ].naz << endl;
            cout << "Stanowsiko: ";
            cout << spis[ a ].stan << endl;
            cout << "Adres: ulica: ";
            cout << spis[ a ].adres.ulica << endl;
            cout << "Adres: nr domu: ";
            cout << spis[ a ].adres.nr << endl;
            cout << "Adres: miasto: ";
            cout << spis[ a ].adres.miasto << endl;
            cout << "Telefon: ";
            cout << spis[ a ].tel << endl;
            cout << "pensja: ";
            cout << spis[ a ].pen << endl << endl << endl;
        }
    }
}

taka mam funkcje - pewnie taka sama bo mam z pliku ktory byl na serwerze, ale na wszelki wypadek pokazuje

sprobuj tez wyswietlic dane w funkcji wczytujacej z pliku, czyli po wczytaniu
C/C++
plik >> spis[ a ].naz //zrob
cout << spis[ a ].naz
bedzie przynajmniej pod kontrola, ze na pewno wczytalo z pliku do struktury
P-26600
Zuza
Temat założony przez niniejszego użytkownika
» 2011-01-16 14:49:53
Udalo mi sie dzis z rana rozwiazac problem :) Nawet nie wiem, co wczoraj poszlo nie tak. Dzis rano usiadlam, poporawialam zmienne i petle i za pierwszym razem dzialalo jak trzeba ;) Problemem prawdopodobnie wczoraj bylo niewyspanie ;)

Dzięki za wszystkie odpowiedzi. Teraz mecze sie z sortowaniem ;) Niby dziala, ale zapisuje od konca :D Bledy w petli, ale ktorej... Dojde do tego sama :) Temat do zamkniecia :)
P-26609
1 « 2 »
Poprzednia strona Strona 2 z 2