#include <iostream>
#include <fstream>
#include <iomanip>
#include <sstream>
#include <string>
using namespace std;
typedef struct
{
int id;
string nazev;
int cena;
int energie;
}jidlo;
/** \brief Vypocet druhe mocniny
*
* \param n Cislo, ktere mocnime
* \return Mocnina cisla n
*
* Funkce pro vypocet druhe mocniny zadaneho cisla
*/
int mocnina(int n)
{
return n*n;
}
bool prevedeni(string a,int&b)
{
istringstream iss(a);
iss>>b;
return iss.good();
}
int main()
{
string menza;
cout<<"Zadej nazev jidelnicku:"<<endl;
cin>>menza;
ifstream jidelnicek(menza.c_str());
string jidlo1;
getline(jidelnicek,jidlo1);
int pos=jidlo1.find(',');
string str1=jidlo1.substr(0,pos);
cout<<str1<<endl;
int pos1=jidlo1.find('"')+1;
int pos2=jidlo1.find('"',pos1)-3;
string str2=jidlo1.substr(pos1,pos2);
cout<<str2<<endl;
int pos3=jidlo1.find(',',pos2);
int pos4=jidlo1.find(',',pos3)-pos2-1;
string str3=jidlo1.substr(pos3+1,pos4-1);
cout<<str3<<endl;
int pos5=jidlo1.find(',',pos4);
string str4=jidlo1.substr(pos5);
cout<<str4<<endl;
jidlo j;
prevedeni(str1,j.id);
cout<<j.id<<endl;
return 0;
}
Ahoj, mám soubor s jídelníčkem:
1,"Spanelsky ptacek /hovezi, vejce, uzenina,okurek/, dusena ryze",41,215
2,"Perstynsky veprovy platek /uzenina,zampiony/, testovinova ryze",37,300
3,"Zapecene testoviny se spenatem a uzenym, okurek",37,250
4,"1ks varene vejce, fazolky na smetane, varene brambory",36,350
5,"Veprovy platek zapeceny s nivou a anglickou slaninou, smazene hranolky",51,500
6,"Kureci smes s bylinkovou omackou, testoviny",47,400
7,"Zapekane palacinky s tvarohem",39,450
8,"Soulet s hrachem a zeleninou, okurek",22,410
9,"Jizerský drak /hovezi,cesnek/, smazene hranolky",50,1000
10,"Veprove kostky po vidensku /cibule/, dusena ryze",35,600
11,"Uzene maso, krenová omacka, houskove knedliky",39,700
12,"Bramborory gulas s fazolovymi lusky, chleb Moskva",39,550
13,"Mamincino kure /testoviny,jatra,zampiony/",39,900
14,"Pekingske maso /veprove,zampiony,solamyl/, kari ryze",37,600
15,"Sekany veprovy rizek s celerem, mastene brambory",40,350
16,"Kynuty makovy zavin",33,200
17,"Hovezi varene /zadni/, duseny spenat, varene brambory",49,850
18,"Ohnive maso /veprove,leco,feferony/, spagety",36,1000
19,"Pecena krkovicka, strapacky se zelim",40,325
20,"Zampionova cina /zampiony,paprika,rajcata/, dusena ryze",30,450
Potřebuji načíst postupně všechny řádky tohoto souboru, kde každý řádek rozdělím na podřetězce id, název, cena a energetická hodnota, které jsou v souboru vymezeny čárkami. Podařilo se mi vyřešit ty první tři podřetězce, ale nevím, jak vyřešit ten poslední podřetězec energetická hodnota. Mohl by mi prosím Vás někdo poradit? Zdrojový kód se nachází nahoře.