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

Odczytywanie danych z pliku txt

Ostatnio zmodyfikowano 2017-02-05 21:12
Autor Wiadomość
kareta3334
Temat założony przez niniejszego użytkownika
Odczytywanie danych z pliku txt
» 2017-02-05 14:00:00
Witam mam problem a mianowicie nie wiem jak odczytywac dane z pliku txt linijkami np. od 1 do 6 , a pozniej od 10 do 15 ... Robie gre w ktorej chcialbym ulokowac mapy pisane w notatniku ...

#include <iostream>
#include <fstream>
#include <conio.h>
using namespace std;
fstream plik;
int n;
void odczyt(){
plik.open("plik.txt", ios::in);
string line;
char odp;
cout<<"Wybierz numer mapy : 1/2"<<endl;
odp=getch();
switch(odp){
case '1' : {                                    <<< tutaj odczytuje 1 mape ( linijki od 0 do 5 )
for(int i=0;i<6;i++){
getline(plik,line);
cout<<line<<endl;
}
break;
}
case '2' : {                                    <<< tutaj odczytuje 2 mape ( linijki od 6 do 11 )
for(int i=6;i<11;i++){
getline(plik,line);
cout<<line<<endl;
}
break;
}
}
}
int main(int argc, char** argv) {
odczyt();
return 0;
}



Dodam ze jestem poczatkujacym "programista" i jeszcze sie ucze wiec prosze nie hejtowac :D
P-157364
latajacaryba
» 2017-02-05 14:20:24
http://cpp0x.pl/kursy/Kurs-C++/Poziom-4/Poruszanie-sie-po-pliku-w-trybie-do-odczytu/476
O to Ci chodziło?
P-157365
kareta3334
Temat założony przez niniejszego użytkownika
» 2017-02-05 16:24:14
Bardziej chodzilo mi o to zeby odczyac tylko linijki 6-11 z pliku tekstowego
P-157369
mateczek
» 2017-02-05 16:49:41
raczej nie ma sensu się szczypać . odczytaj cały plik do różnych tablic albo zapisz mapy w oddzielnych plikach !!!
C/C++
#include <iostream>
#include <fstream>
#include<vector>
using namespace std;

int main( int argc, char ** argv ) {
   
    vector < string > mapa1;
    vector < string > mapa2;
    ifstream plik( "plik.txt" );
    if( !plik ) {
        cout << "brak pliku";
        return 0;
    }
    string lineTemp;
    int licznik = 0;
    while( getline( plik, lineTemp ) ) {
        if( licznik <= 5 )
             mapa1.push_back( lineTemp );
        else
             mapa2.push_back( lineTemp );
       
        licznik++;
    }
    // wyświetl mapę 2
    for( string s: mapa2 )
         cout << s << endl;
   
}
P-157371
kareta3334
Temat założony przez niniejszego użytkownika
» 2017-02-05 21:12:52
Dobra czyli nie oplaca sie robic tak jak ja chcialem ... zamykam temat
P-157376
« 1 »
  Strona 1 z 1