Wątek przeniesiony 2016-12-26 18:35 z C/C++ przez ŁF.

getline

Nadziany Terrorysta
2016-12-26 18:10
Nadziany Terrorysta
0

witam,
w pliku mam podawane dane
imię;nazwisko;wiek \n

jak zrobić za pomocą getline aby najpierw wczytać całą linię do zmiennej a potem za pomocą getline z separatorami odczytać kolejno imię nazwisko i wiek?

Pozostało 580 znaków

2016-12-26 18:20

Rejestracja: 3 lata temu

Ostatnio: 1 godzina temu

1

Można użyć std::istringstream

#include<iostream>
#include<fstream>
#include<sstream>
//istringstream

using namespace std;

int main()
{
    fstream plik;
    plik.open("p.txt");
    if(plik.fail())cout<<"!!!!!!!!!!!"<<endl;

    string linia;
    while(getline(plik, linia))
    {
        cout<<linia<<endl;

        istringstream iss(linia);

        string pole;
        while(getline(iss, pole, ';'))
        {
            cout<<pole<<endl;
        }
        cout<<endl;
    }

    plik.close();
}
edytowany 2x, ostatnio: Potat0x, 2016-12-26 18:44

Pozostało 580 znaków

Nadziany Terrorysta
2016-12-26 18:28
Nadziany Terrorysta
0

projekt.cpp: In function ‘int main()’:
projekt.cpp:17:23: error: variable ‘std::istringstream iss’ has initializer but incomplete type
istringstream iss(task);

 int maxNumProc, maxDurationProc;
fstream file;
string task,wyr;
file.open("file.txt", std::ios::in | std::ios::out );

while(getline(file,task,';'))
{
istringstream iss(task);
    while(getline(iss, wyr,' '))
    {
        cout<<wyr<<endl;
    }
}

co jest powodem tego błędu?

#include<sstream> dodaj. - mwl4 2016-12-26 18:31

Pozostało 580 znaków

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0