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

Problem z wczytaniem danych w c++ builder

Object Storage Arubacloud
0 głosów
155 wizyt
pytanie zadane 10 grudnia 2016 w C i C++ przez kamiloo Nowicjusz (140 p.)

Witam próbuje własnie zrobić zadanie domowe do 10 odcinka c++ obiektowego i mam problem mianowicie nie wiem jak zapisać zmienią do pliku próbowałem 


// zapis do pliku
void __fastcall TForm1::FormDestroy(TObject *Sender)
{
   plik.open("czas.txt",ios :: out);
   plik<<s;
   plik.close();
}
 //odczyt z pliku
void __fastcall TForm1::FormCreate(TObject *Sender)
{


plik.open("czas.txt",ios :: in);

  getline(plik,linia);
  linia2=linia.c_str();
          s=StrToInt(linia2);
plik.close();

}

kiedy wpisze sam wartość do pliku txt to wszystlo działa poprawnie niestety program nie zapamietuje tej wartości i plik jest pusty po wyłaczeniu programu.
Proszę o pomoc i z góry dziękuje za wszelkie wskazówki :)

2 odpowiedzi

0 głosów
odpowiedź 10 grudnia 2016 przez Burgund Początkujący (480 p.)

Nie znam się zbytnio na C++, ale...

 std::string sVariable;
 std::cin >> sVariable;
 std::ofstream out("output.txt");
 out << sVariable;
 out.close();
 return 0;

...u mnie działa ;)

komentarz 11 grudnia 2016 przez kamiloo Nowicjusz (140 p.)
Tak to też mi działa tylko tu chodzi o inta ;)
komentarz 11 grudnia 2016 przez Burgund Początkujący (480 p.)
Po wpisaniu w google "c++ write int to file" już w pierwszych kilku wynikach wyszukiwania jest parę rozwiązań. Nie wklejam kodu bo zakładam że chcesz wybrać ten który ci najbardziej odpowiada.
0 głosów
odpowiedź 10 grudnia 2016 przez Przemek Gaduła (3,600 p.)
A gdy zamykasz program to zmienna s ma jakąś wartość?
komentarz 10 grudnia 2016 przez Burgund Początkujący (480 p.)
Miałem na myśli że działa rozwiązanie które ja wstawiłem, twojego nie testowałem
komentarz 11 grudnia 2016 przez kamiloo Nowicjusz (140 p.)

zmienna s ma wartość jak najbardziej to na niej polega prawie cały program

void __fastcall TForm1::dgdsfse(TObject *Sender)
{
s++;
    godzin= s/3600;
    godz=IntToStr(godzin);
    if(godzin<10) godz="0"+godz;
    minut=(s-godzin*3600)/60;
    minu=IntToStr(minut);
    if(minut<10) minu="0"+minu;
    sekund=s-godzin*3600-minut*60;
    sek=IntToStr(sekund);
    if(sekund<10) sek="0"+sek;
    Label1->Caption= godz+":"+minu+":"+sek;


}

tak to wygląda 

Podobne pytania

0 głosów
1 odpowiedź 128 wizyt
0 głosów
1 odpowiedź 145 wizyt
0 głosów
1 odpowiedź 427 wizyt
pytanie zadane 4 marca 2017 w C i C++ przez Patryk Rafał Bywalec (2,700 p.)

92,628 zapytań

141,490 odpowiedzi

319,860 komentarzy

62,010 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!

...