Problem mit File-Lesen



  • Hi Leute,

    Ich habe ein Problem.

    Ich habe eine Methode geschrieben, die Dateien aus einem bestimmten Verzeichnis
    liest, und die Inhalte dessen Dateien ausgibt.

    void  ReadFile(FILE *infp){
    
     int i, entries;
     int *array; 
     WIN32_FIND_DATA dir;
     HANDLE fhandle;
    
     array = (int *) calloc (10, sizeof(int));
    
     /* Handle auf das Verzeichnis director */
    
       if      
       ((fhandle=FindFirstFile("u:\\Diplom_Bengus\\Teil2\\Test\\Versuch\\*",&dir))     
         != INVALID_HANDLE_VALUE)
       {
    
        do 
         {  /* Verzeichnis auslesen */
            printf("%s\n", dir.cFileName);
            if ((strcmp(dir.cFileName, ".")!=0) && (strcmp(dir.cFileName, "..")!=0)   
                 && (strcmp(dir.cFileName, "Test.exe")!=0))
            {
    
                /* Hier ist das Problem */   
    	   if ((infp=fopen(dir.cFileName,"rb"))==NULL)
               {
                 fprintf(stderr,"Error: Could not open %s for  
                         reading\n",dir.cFileName);
    	     exit(0);
               }
    
    	      for (i =0; i < 10; i++)
                  {  
                     if(fread ( &array[i], 4, 1, infp)==0)break;
                        printf ("%d, %u\n", i,array[i]); 
                  } 
    
            }
    
        } while(FindNextFile(fhandle,&dir)); 
      }
    
       FindClose(fhandle);
    }
    

    Probelm, Er findet das richtige Verzeicnis, aber er kann den File nicht zum Lesen öffnen.

    Wo liegt mein Fehler ?

    Im Voraus Vielen Dank



  • vielleicht musste noch den pfad davorsetzen?
    also dieses: u:\\Diplom_Bengus\\Teil2\\Test\\Versuch\\



  • Hallo

    Vielen Dank für deinen Antwort,

    aber Ich weis nicht genau, wie man in

    fopen
    

    ein Pfad einegeben kann.

    if ((infp=fopen(u:\\Diplom_Bengus\\Teil2\\Test\\Versuch\\dir.cFileName,"rb"))==NULL)
               {
                 fprintf(stderr,"Error: Could not open %s for  
                         reading\n",dir.cFileName);
             exit(0);
               }
    

    Es wäre super, wenn Du mir helfen würdest!!!!!!!!!!!!!!

    lena



  • strings zusammenkleben kann man mit 'strcat'. guckst du: http://www.cplusplus.com/ref/cstring/strcat.html



  • Vielen Vielen Vielen Dank!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

    Es hat geklappt!!!!!!!!!!!!!!!!!!!!

    Viele Grüsse

    lena


Anmelden zum Antworten