Dateiinhalt auslesen geht nicht



  • Ich möchte den Inhalt einer Datei auslesen, allerdings bricht mir das
    Programm immer mit "str != NULL" ab.

    Wenn ich den Pfad nicht über ein Editcontrol vorgebe, sondern ihn
    mittels

    File.Open("c:\\test.txt", CFile::modeRead,NULL);
    

    angebe, funktioniert das Auslesen der Textdatei.

    CString xstring;
    int zeile=0;
    CString c_zeile,wert;
    
    CStdioFile File;
    //dateiname1 ist mein CString des Editcontrol IDC_EDIT1
    File.Open(dateiname1, CFile::modeRead,NULL);
    while(File.ReadString(xstring))
    {	
    
    zeile++;
    wert = "\r\n"+xstring;
    c_zeile.Format("%i",zeile);
    
    MessageBox(wert,c_zeile);
    
    }
    


  • Da solltest du eventuell kontrolieren, ob das Öffnen auch funktioniert hat.

    PS:

    //dateiname1 ist mein CString des Editcontrol IDC_EDIT1
    

    Hast du auch daran gedacht, diesen String mit dem Editcontrol zu synchronisieren? (Stichwort: UpdateData())



  • Hast du UpdateData() vergessen? 😕



  • Hallo CStoll,

    ich habe das

    UpdateData(true)
    

    ganzen oben in der Funktion gesetzt
    (sorry habe ich hier vergessen her zu kopieren).

    Es lag aber an einem Fehler den ich versehentlich an anderer
    Stelle eingebaut und nicht bemerkt habe.

    Der Fall hat sich erledigt. Mein obiger Code funktioniert 🙂



  • Laut MSDN sollte bein Öffnen auch noch eine "Rechte-Flag" mit angegeben werdeb, also shared, exclusiv usw(genaue Bezeichner siehe MSDN). Solltest du mal machen, nicht das da später Probleme entstehen.


Log in to reply