Nyt voimme toteuttaa "tuotetiedoston" lukevan ohjelman C++:n tietovirroilla ja funktioiden erota ja luvuksi avulla:
// Projektiin +ALI\mjonot.c
#include <iostream>
#include <fstream>
#include <cstdio>
#include <string>
using namespace std;
#include "mjonotpp.h"
int tulosta_tuotteet(void)
{
string rivi,pala;
string nimike; double hinta; int kpl;
ifstream fi("tuotteet.dat");
if ( !fi ) return 1;
cout << "\n\n\n";
cout << "-------------------------------------------\n";
while ( getline(fi,rivi) ) {
nimike = erota(rivi,'|'); poista_tyhjat(nimike);
pala = erota(rivi,'|'); if ( !luvuksi(pala,hinta) ) continue;
pala = erota(rivi,'|'); if ( !luvuksi(pala,kpl) ) continue;
printf("%-20s %7.0lf %4d\n",nimike.c_str(),hinta,kpl);
}
cout << "-------------------------------------------\n";
cout << "\n\n\n";
return 0;
}
int main(void)
{
if ( tulosta_tuotteet() ) {
cout << "Tuotteita ei saada luetuksi!\n";
return 1;
}
return 0;
}
Ohjelma tulostaa:
------------------------------------------- Volvo 12300 1 Audi 55700 2 Saab 1500 4 Volvo 123400 1 -------------------------------------------