Csv tiedostosta luetaan rivin tiedot, mikä onnistuu, mutta kuinka ne saisi helpoimmalla tavalla siirrettyä uuteen olioon. Eli ekaksi luetaan otsikkotiedot pvm, asiakas, tilausnro, tuote... Nyt pitäisi muodostaa olioita, jotka sisältävät esim tiedot 13.10.2009;Matti Meikäläinen;2;partakono;...
Ja homma on tehtävä C-kielellä, ei vaihtoehtoja.
Ja homma on tehtävä C-kielellä, ei vaihtoehtoja.
Vastaukset 5
Vanhimmat
ylikuormittamalla ne saa kaikkein helpoiten oliot luettua ja kirjoitettua.
Ylikuormittaminen on olio-ohjelmoinnin juttuja, puhtaalla C:ä, kuten aloittaja ilmiotti ei ole mahdollista ylikuormittaa operaattoreita.
Aloittajahan puhuu olioistaan jo otsikossaan. Muistathan mainita jotkossa lähteesi: monet noista on nähnyt noita sorsia yhden Bjarne-nimisen jampon kirjassa jo yli aikamonta vuotta sitten.
Aloittaja:
"Ja homma on tehtävä C-kielellä, ei vaihtoehtoja."
Saapi käytellä niinkuin hyvältä tuntuu kokeile jos saat toimimaan.
#include
#include
#include
#include "functiot.cpp"
std::vectorRivit;
std::vectorSolut;
class Tilaukset{
public:
std::string pvm;
std::string asiakasNumero;
std::string tilausNumero;
std::string tuote;
public:
Tilaukset(std::string p, std::string an, std::string tn, std::string t){
pvm = p;
asiakasNumero = an;
tilausNumero = tn;
tuote = t;
}
Tilaukset(){}
};
int main(){
std::vector Lista;
Rivit = file("tilaukset.txt");
for(int a = 0; a < Rivit.size(); a ){
Solut = explode(";", Rivit[a]);
Lista.push_back(Tilaukset(Solut[0], Solut[1], Solut[2], Solut[3]));
}
return EXIT_SUCCESS;
}
sitten functiot.cpp
/*
Nimi: Tiedoston käsittely
Kopiointi: Vapaasti kopioitavissa
Tekijä: Juha Teurokoski
Pvm: 23.03.07 20:51
Muutettu: 28.3.2007
Mitä: Functiot palauttavat arvon eli functioita voi käyttää
= operaattorilla.
*/
#include
#include
#include
#include
#include
using namespace std;
vector file(string nimi){
vector Line_tmp;
int a = 0;
string tmp;
ifstream sisaan(nimi.c_str());
if(!sisaan){
cout