Folgezeichen einlesen

Fr3dd1

Mitglied
Hallo,

ich hab ein kleines Problem. Ich habe eine Textdatei worin bestimmte Daten gespeichert sind. Jeder Datensatz beginnt mit einer ID. Die lautet immer so: #nr. Ich möchte das jetzt so machen, dass ich in der Textdatei nach dem '#' suche und dann das darauf folgende Zeichen einlese. Der erste Teil funktioniert auch aber beim einlesen des nächsten Zeichens scheitere ich. Ich bin noch recht neu und komme noch nicht so recht mit den Funktionen klar.

Hoffe ihr könnt mir helfen :)

mfg Fr3dd1
 
Code:
#include <iostream>
#include <fstream>
#include <string.h>
using namespace std;

int main(){
unsigned short size=100;
string id="";
zeile[size];
ifstream einlesen ("C://text.txt");
for(unsigned short s=0;s<size;s++){
getline(einlesen,zeile[s],'\n'); 
}
//zeile[]enthält nun die einzelnen Zeilen

for(unsigned short haupt=0;haupt<size;haupt++){

            for(unsigned short unter=0;unter<zeile[s].lenght();unter++){

               if(zeile[haupt][unter]=="#"){
                           if(unter<id_laenge){              
                           id+= zeile[haupt][unter];
                                                    }
}//ID enthält die ID (Länge hängt von id_laenge ab)

}
}
};
Nicht getestet und vllt musst du noch was einbinden für die Funktion lenght();
müsste so aber eigentlich gehen...
lg
kicker
 
Zuletzt bearbeitet:
Also ich werd aus deinem Code irgendwie nicht schlau. Tut mir leid aber das sieht mir irgendwie zu kompliziert aus. Wie folgt suche ich nach dem '#' :

Code:
func_find_id(char datei[31])
{
	int text;
	datei_ptr=fopen(datei,"r");

	while(!feof(datei_ptr))
	{
		text=fgetc(datei_ptr);

		if(text=='#')
		{
			//hier muss jetzt die Funktion rein um das folge-Zeichen einzulesen 
		}

	}
	fclose(datei_ptr);
}

Da wo der Kommentar ist brauche ich halt diese Funktion.
 
Weißt du wie viele Stellen deine Zahl hat? Dann ist es einfacher :P Musst ja per atoi noch in Zahl umwandeln ... nächstes Zeichen kannst du einfach per fgetc einlesen ...
 
Zurück