Beispiel 2 (Nicht kompilierbar)

13.12.2016 08:31 Uhr
#include <iostream>

using namespace std;
#include <fstream>

int main()
{
char zeichen;
char puffer[100];
int zaehler;

ifstream eingabe;

eingabe.open("daten1.xml");

for (zaehler=0;;)
    {
    eingabe.get(zeichen);
    if (eingabe.eof()) break;

// Wir verarbeiten die einzelnen Zeichen in Abhängigkeit davon, welche es sind.
   switch(zeichen)
      {
   case '<':
// Ein neues Tag beginnt.
      break;

   case '>':
// Ein Tag endet.
      breeak;

   case ' ':
// Wenn wir bisher einen Tagnamen gelesen haben, endet er.
// Wenn wir einen Attributwert lesen, ist es ein normales Zeichen, das
// gespeichert wird.
// Sonst ignorieren wir es.
      break;

   case '=':
// Wenn wir einen Attributnamen gelesen haben, endet er.
// Wenn wir einen Attributwert lesen, ist es ein normales Zeichen, das
// gespeichert wird.
// Sonst melden wir einen Fehler.
      break;

   case '"':
// Wenn wir einen Attributwert erwarten, beginnt er.
// Wenn wir einen Attributwert verarbeiten, endet er.
// Sonst melden wir einen Fehler.
      break;

   default:
// Wir speichern das Zeichen, wenn wir innerhalb eines Tags sind.
      break;
    }
eingabe.close();
}
Schlagwörter: