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

Plik,zapis do pliku.

Object Storage Arubacloud
0 głosów
182 wizyt
pytanie zadane 23 września 2015 w C i C++ przez Shraup Początkujący (310 p.)
Czytałem o tym ale jakoś nie mogę zrozumieć jak zrobić aby po wylosowaniu wyrazu, wyraz zapisywalo do pliku...     

 

case '1':

                   {

                    system("cls");
                    cout<<"Send your nick : ";
                    cin>>op;
                    const int wordc = 27;
                    for(int i=10;i>=0;i--)
                    {

                        Sleep(500);
                        system("cls");
                            cout<<i<<endl;

                        const char* const data[wordc] = {"AWP|Asimov", "AUG | Chameleon", "AK-47 | Redline", "P90 | Trigon",
                            "Nova | Antique", "MAC-10 | Heat", "SG 553 | Pulse", "FAMAS | Sergeant", "Negev | Terrain","USP-S | Guardian","MAG-7 | Heaven Guard","Tec-9 | Sandstorm","UMP-45 | Corporal","AWP|Asimov", "AUG | Chameleon", "AK-47 | Redline", "P90 | Trigon","Nova | Antique", "MAC-10 | Heat", "SG 553 | Pulse", "FAMAS | Sergeant", "Negev | Terrain","USP-S | Guardian","MAG-7 | Heaven Guard","Tec-9 | Sandstorm","UMP-45 | Corporal","KNIFE!"};
                        cout<<"You win : ";
                        cin>>skin;
CO TU DAĆ ABY ZAPISAŁO MI TO DO PLIKU?

2 odpowiedzi

+1 głos
odpowiedź 23 września 2015 przez niezalogowany
wybrane 23 września 2015 przez Shraup
 
Najlepsza

Pozwól, że nie skorzystam z twojego kodu, lecz pokażę ci małe demo jak zapisać wylosowany wyraz (więcej się tak nauczysz)

const int size = 3;
string names[size] = {"John","Andrew","NoName"};

fstream file("winner.txt", ios::out | ios::trunc);


// losowanie nicku
int index = rand()%size;

// zapisanie nicku zwycięzcy
file << names[index] << endl;
file.close();

// pokazanie w konsoli
cout << names[index] << endl;

 

komentarz 23 września 2015 przez Shraup Początkujący (310 p.)
  Wybacz ze zawracam ci tak głowę... ale mam to wszystko w case wpisać czy nie bo się trochę pogubiłem.. ;c
case '0':
                {
fstream file("winner.txt", ios::in);
if(!file.is_open())
{
    cout << "Nie znaleziono pliku";
    return 1;
}

std::srand(std::time(NULL));

CO TU WPISAĆ?


string wyniki[10];
int i = 0;

while(!file.eof())
{
    file >> wyniki[i++];
}

 

komentarz 23 września 2015 przez niezalogowany
// ten kod jest przed pętlą
fstream file("winner.txt", ios::in);
std::srand(std::time(NULL));


if(!file.is_open())
{
    cout << "Nie znaleziono pliku";
    return 1;
}
// --------------------------------

case '0':
{
string wyniki[10];
int i = 0;
 
while(!file.eof())
{
    file >> wyniki[i++];
}
}

// kod poniżej jest pod pętlą
file.close();

Tylko, że zapisywanie i wczytywanie plików jednocześnie przy twoich założeniach trzeba nieco inaczej napisać, na cpp0x wszystko pisze, jedynie przeczytaj

komentarz 24 września 2015 przez Shraup Początkujący (310 p.)

mam jakiś błąd przy pentli while...

Co robie źle?

                case '8':
                {
                    system("cls");
                    cout<<"Send your nick: ";
                    cin>>op;
                    const int wordc = 32;
                    for(int i=10;i>=0;i--)
                    {
const int size = 31;
                        Sleep(500);
                        system("cls");
                            cout<<i<<endl;

                        string names[size]  = {"MAC-10 | Neon Rider", "M4A1-S | Hyper Beast", "FAMAS | Djinn", "Galil AR | Eco",
                            "Five-SeveN | Monkey Business", "UMP-45 | Grand Prix", "CZ75-Auto | Pole Position", "MAG-7 | Heat", "AWP | Worm God", "Sawed-Off | Origami","Negev | Man-o'-war","P250 | Valence","Desert Eagle | Bronze Deco","MP7 | Armor Core","AK-47 | Elite Build","MAC-10 | Neon Rider", "M4A1-S | Hyper Beast", "FAMAS | Djinn", "Galil AR | Eco",
                            "Five-SeveN | Monkey Business", "UMP-45 | Grand Prix", "CZ75-Auto | Pole Position", "MAG-7 | Heat", "AWP | Worm God", "Sawed-Off | Origami","Negev | Man-o'-war","P250 | Valence","Desert Eagle | Bronze Deco","MP7 | Armor Core","AK-47 | Elite Build","KNIFE!"
                           };


                        cout<<"You win : ";





fstream file("winner.txt", ios::out |ios:: trunc);
std::srand(std::time(NULL));
int index = rand()%size;
file << names[index] << endl;
file.close();
cout << names[index] << endl;

                    }
fstream file("winner.txt", ios::in);
std::srand(std::time(NULL));


if(!file.is_open())
{
cout << "Nie znaleziono pliku";
return 1;
}
                   goto start;
                }

case '0':
{
string wyniki[10];
int i = 0;

while(!file.eof())
{
    file >> wyniki[i++];
}
}

 

komentarz 24 września 2015 przez niezalogowany
"Jakiś błąd", mi to niewiele mówi. Najprawdopodobniej wpliku txt masz więcej słów po spacji/nowej linii niż 10 (aktualny rozmiar tablicy)
komentarz 24 września 2015 przez Shraup Początkujący (310 p.)
To nie to...

przy tym mam ,,ten czerwony prostokąt" :

while(!file.eof())
0 głosów
odpowiedź 23 września 2015 przez criss Mędrzec (172,590 p.)

Ale co TO? Tą tablice? Np .

ofstream file("nazwapliku.txt"); //najpierw otworz sobie ten plik
for(short i =0; i<wordc; i++)
               file<<data[i];

 

Podobne pytania

0 głosów
1 odpowiedź 332 wizyt
0 głosów
1 odpowiedź 336 wizyt
pytanie zadane 19 stycznia 2021 w C i C++ przez forvev Początkujący (390 p.)
0 głosów
1 odpowiedź 346 wizyt
pytanie zadane 16 kwietnia 2020 w C i C++ przez Hubertius Bywalec (2,970 p.)

92,596 zapytań

141,446 odpowiedzi

319,720 komentarzy

61,981 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!

...