• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

zapis do pliku

Object Storage Arubacloud
0 głosów
277 wizyt
pytanie zadane 13 listopada 2022 w C i C++ przez piotr_domanski Bywalec (2,080 p.)
edycja 13 listopada 2022 przez piotr_domanski

Zrobiłem testy, pogram odczytuje i dodaje wartość. Tylko nie chce jej zapisać

NOWY KOD:

fstream licznik_dni_plik;
    licznik_dni_plik.open("system/data/licznik_dni_plik.txt", ios::out);

    licznik_dni_plik << "1";
    licznik_dni_plik.close();
fstream licznik_dni_plik;
            int liczba_dni;
            string liczbadniwyraz;
            licznik_dni_plik.open("system/data/licznik_dni_plik.txt", ios::in);
            getline(licznik_dni_plik, liczbadniwyraz);
            liczba_dni = atoi(liczbadniwyraz.c_str());
            licznik_dni_plik.open("system/data/licznik_dni_plik.txt", ios::out);
            int wynikdni;
            wynikdni = liczba_dni + 1;
            cout << wynikdni;
            Sleep(3000);
            licznik_dni_plik << wynikdni; //// TU JESE PROBLEM, WYNIK ODCZYTUJE I DODAJE ALE NIE CHCE ZAPISAĆ 2 (1+1=2)
            licznik_dni_plik.close();

1 odpowiedź

+2 głosów
odpowiedź 13 listopada 2022 przez j23 Mędrzec (194,920 p.)
    std::string fname = "system/data/licznik_dni_plik.txt";
    int v;

    std::ifstream is(fname);
    if(is.is_open() && is >> v) {
        is.close();
        
        std::ofstream os(fname);
        os << ++v << '\n';
    } else {
        std::ofstream os(fname);
        os << 1 << '\n';
    }

O to chodzi?

komentarz 13 listopada 2022 przez piotr_domanski Bywalec (2,080 p.)
sprawdzę czy działa, ale dzięki
komentarz 13 listopada 2022 przez piotr_domanski Bywalec (2,080 p.)
wiesz co ogólnie to pogram mi sczytuje 1 i dodaje do niej 1 i końcowy wynik wychodzi 2;

I on wypisuje na ekran więc dobrze sczytuje i liczy. Al jest problemem taki że jak mam zapis do pliku :

czyli

int wynik;

po odczytaniu string i zrobieniu atoi( to wszystko działa)

wynik = liczba_dni +1; ///// to daje dwa

ale potem nie chce zapisać tego wyniku do pliku, dlaczego :(

licznik_dni_plik << wynik; //// i tu nie chce zapisać tego, program się kompiluje.
komentarz 13 listopada 2022 przez j23 Mędrzec (194,920 p.)
Czekaj, bo nie rozumiem. To w końcu działa kod, który dałem, czy nie? Jeśli tak, to skup się na tym kodzie.

Jeśli pytasz, dlaczego twój kod nie działa, to zgaduje, że strumień wchodzi w stan błędu, co uniemożliwia wpisanie danych do pliku. Wielokrotnie otwierasz ten sam strumień nie zamykając go uprzednio - pewnie to jest problem.
komentarz 13 listopada 2022 przez piotr_domanski Bywalec (2,080 p.)
o, muszę sprawdzić, twój kod to nie o to o mi chodzi, moim problemem jest to że nie chce zapisać do pliku wyniku. Ale sprawdzę ten problem co mówiłeś

Podobne pytania

0 głosów
0 odpowiedzi 518 wizyt
pytanie zadane 13 stycznia 2022 w C i C++ przez Nikso Nowicjusz (230 p.)
+3 głosów
4 odpowiedzi 1,713 wizyt
pytanie zadane 30 czerwca 2015 w C i C++ przez Phobos Użytkownik (720 p.)
0 głosów
1 odpowiedź 128 wizyt
pytanie zadane 12 listopada 2022 w C i C++ przez piotr_domanski Bywalec (2,080 p.)

92,568 zapytań

141,424 odpowiedzi

319,634 komentarzy

61,956 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...