Skip to content

Instantly share code, notes, and snippets.

@k-con
Created December 13, 2017 14:23
Show Gist options
  • Select an option

  • Save k-con/aaca3a49036143d5f08c5d222a2b20a6 to your computer and use it in GitHub Desktop.

Select an option

Save k-con/aaca3a49036143d5f08c5d222a2b20a6 to your computer and use it in GitHub Desktop.
HKI C++ I 2017 - Exercise 6: Example
#include <iostream>
using namespace std;
#include <fstream>
int main(){
char zeichen;
char puffer[100];
int zaehler;
ifstream eingabe;
eingabe.open("daten.xml");
for (zaehler=0;;){
eingabe.get(zeichen);
if (eingabe.eof()) break;
switch(zeichen){
case '<':
if (zaehler){
puffer[zaehler]='\0';
cout << "Inhalt: " << puffer << endl;
zaehler=0;
}
break;
case '>':
if (puffer[0]=='/'){
puffer[zaehler]='\0';
cout << "Stoptag: ";
for (int i=1; puffer[i]!='\0'; i++){
cout << puffer[i];
};
cout << endl;
zaehler=0;
}
else if (zaehler){
puffer[zaehler]='\0';
cout << "Starttag: " << puffer << endl;
zaehler=0;
}
break;
case ' ':
if (zaehler){
puffer[zaehler]='\0';
cout << "Tag: " << puffer << endl;
zaehler=0;
}
break;
case '=':
if (zaehler){
puffer[zaehler]='\0';
cout << "Attributname: " << puffer << endl;
zaehler=0;
}
break;
case '"':
if (zaehler){
puffer[zaehler]='\0';
cout << "Attributwert: " << puffer << endl;
zaehler=0;
}
break;
case '\n':
break;
default:
puffer[zaehler]=zeichen;
zaehler++;
break;
}
}
eingabe.close();
{
/* bitte ignorieren; nur bis zu Ihrer Anmeldung notwendig */
int x;
cin >> x;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment