"." ".." aus string entfernen



  • #include <iostream.h>
    #include <stdio.h>
    #include <stdlib.h>
    #include <conio.h>
    #include <dos.h>
    #include <sys/types.h>
    #include <dirent.h>

    int main(int argc, char **argv){
    FILE *txt, *proxy;
    char name[25],tmp[100];
    size_t size;

    printf("\t\tProxynator\n\n\tPCO GmbH & Co. KG\n\nAutor:\tEduard Herlitz\nDatum:\t11-03-2008\n\n");
    sleep(1);

    DIR *dir;
    struct dirent *dirzeiger;
    if(argc<2) {
    fprintf(stderr,"Verwendung : Proxynator.exe VERZEICHNIS\n");
    sleep(2);
    return EXIT_FAILURE;}

    if((dir=opendir(argv[1])) == NULL) {
    fprintf(stderr,"Fehler beim OEffnen von %s\n",argv[1]);
    return EXIT_FAILURE;}

    proxy=fopen("Proxy_Auswertung_LHBW.csv","a+");
    if(NULL == proxy) {
    printf("Konnte Datei \"Proxy_Auswertung_LHBW.csv\" nicht oeffnen!\n");
    sleep(2);
    return EXIT_FAILURE;}

    while((dirzeiger=readdir(dir)) != NULL){
    do{strcpy(tmp,argv[1]);
    size = strlen(tmp);
    tmp[size]='\';
    tmp[size+1]='\0';
    strcat(tmp,(*dirzeiger).d_name);
    txt=fopen(tmp,"r");}while((*dirzeiger).d_name != ".");
    if(NULL == txt) {
    printf("Konnte Datei \"%s\" nicht oeffnen!\n",tmp);
    sleep(1);}

    fscanf(txt,"%s",&name);
    fprintf(proxy,"%s;",name);
    while((fscanf(txt,"%s",&name))!= EOF){}
    fprintf(proxy,"%s\n",name);
    fclose(txt);
    tmp[0]='\0';}

    fclose(proxy);

    if(closedir(dir) == '–1')
    printf("Fehler beim Schliessen von %s\n", argv[1]);

    return EXIT_SUCCESS;}

    do{strcpy(tmp,argv[1]);
    size = strlen(tmp);
    tmp[size]='\';
    tmp[size+1]='\0';
    strcat(tmp,(*dirzeiger).d_name);
    txt=fopen(tmp,"r");}while((*dirzeiger).d_name != ".");

    in dem Teil versuche ich den "." aus dem String in (*dirzeiger).d_name zu entfernen. Das Problem ist es nicht funktioniert und dann dadurch eine Entlosschleife entsteht.



  • ich sollte noch lieber mehr zu dem vorgehen erklären.
    Ich lese aus einem Verzeichnis welches als parameter mit gegeben wird die Dateien aus.
    beim auflisten werden noch das pwd "." und das verzeichnis dadrüber ".." mit übergeben. Diese möchte ich aber nicht weiter verarbeiten und deshalb ausschließen.

    mfg
    Time-walker



  • Falsches Forum! Gehört ins C-Forum.



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum ANSI C verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Wie sieht denn readdir aus ?
    Ignorier doch dort die "." und ".." Dinger.


Anmelden zum Antworten