Revontulet
Ensign
- Registriert
- Apr. 2004
- Beiträge
- 233
Hallo,
ich habe folgendes Problem:
Ich möchte ein Verzeichnis mit mehreren tausend Messreihen automatisiert auswerten lassen.
Dazu habe ich mir folgendes zusammengebastelt (da der mit Abstand größste Teil hier irrelevant ist habe ich ihn weggelassen):
Das eigentliche Einlesen der Verzeichnisses klappt problemlos, wenn ich jedoch versuche, die Dateien anhand einiger Kriterien zu filtern, passiert Mist. Bei dem obigen Beispiel (das zugegebenermaßen etwas sinnfrei ist) sollte doch an sich nur die Datei Keil_oben-086Clicks_Hmax=500_deltaH=20 geöffnet werden, es passiert jedoch das folgende:
Auffällig hierbei ist:
"Entmag" ist die erste Datei, die auf das Kritererium, dass sich im Dateinamen kein "." befindet, zutrifft. Dann folgt die gewünschte Datei, und Nummer drei ist die darauf folgende Datei.
Dieses Problem ist reproduzierbar unter Windows/cygwin mit dem gcc4.1.0 und unter Mandria (gcc 4.1.1).
Sieht jemand von euch da eine Möglichkeit, den Mist loszuwerden?
ich habe folgendes Problem:
Ich möchte ein Verzeichnis mit mehreren tausend Messreihen automatisiert auswerten lassen.
Dazu habe ich mir folgendes zusammengebastelt (da der mit Abstand größste Teil hier irrelevant ist habe ich ihn weggelassen):
Code:
DIR *dp;
struct dirent *ep;
ifstream messergebnisse;
dp = opendir ("./");
if (dp != NULL)
{
while (ep = readdir (dp))
{
if(!strstr(ep->d_name,"."))
{
if(strstr(ep->d_name,"Keil_oben-086Clicks_Hmax=500_deltaH=20"))
messergebnisse.open(ep->d_name);
if(messergebnisse)
{
printf("%s opened\n",ep->d_name);
messergebnisse.close();
}
}
}
closedir (dp);
}
else
printf("Couldn't open the directory\n");
Code:
$ ./a.out
Entmag opened
Keil_oben-086Clicks_Hmax=500_deltaH=20 opened
Keil_oben-088Clicks_Hmax=250_deltaH=05 opened
"Entmag" ist die erste Datei, die auf das Kritererium, dass sich im Dateinamen kein "." befindet, zutrifft. Dann folgt die gewünschte Datei, und Nummer drei ist die darauf folgende Datei.
Dieses Problem ist reproduzierbar unter Windows/cygwin mit dem gcc4.1.0 und unter Mandria (gcc 4.1.1).
Sieht jemand von euch da eine Möglichkeit, den Mist loszuwerden?
Zuletzt bearbeitet: