TXT in Edit Box laden



  • Hallo Leute,

    ich will das mein Programm, wenn Leute die richtige Sparte ausgewählt haben, eine News in einer "Edit Box" geladen bekommen!

    Newsfile:
    http://www.the-roughnecks.de/load.txt

    Edit Box soll die load.txt anfordern und die News(Inhalt der TXT Datei) in die Edit Box einfügen! Dürfte ja nicht so schwer sein oder? 🤡



  • Mit CreateFile(), ReadFile() und CloseHandle() die Datei in einen String-Buffer einlesen.
    Mit SetWindowText() den Inhalt des String-Buffers in das Edit-Feld packen...



  • Mal etwas genauer erklärt bitte 😉



  • Hab mal eben was gefuckelt (ungetestet!)

    HANDLE fHandle;
    DWORD fSize;
    char *fileBuffer;
    DWORD bytesRead;
    
    // Datei öffnen:
    fHandle=CreateFile("Dateiname",GENERIC_READ,0,NULL,OPEN_EXISTING,0,NULL);
    if (fHandle==INVALID_HANDLE_VALUE)
    {
    	OutputDebugString("Datei konnte nicht geöffnet werden!\n");
    }
    
    // Dateigröße holen:
    fSize=GetFileSize(fHandle,NULL);
    
    // Speicher für die Datei + abschließendes Terminierungszeichen holen:
    fileBuffer=(char*)malloc( (fSize+1)*sizeof(char) );
    
    // Datei in den Speicher einlesen:
    if (!ReadFile(fHandle,fileBuffer,fSize,&bytesRead,NULL))
    {
    	OutputDebugString("Datei konnte nicht eingelesen werden!");
    }
    
    // Terminierungszeichen dranpacken:
    fileBuffer[fSize]='\0';
    
    // Datei schließen:
    CloseHandle(fHandle);
    
    // Text im Speicher in das Textfeld kopieren:
    SetWindowText(HandleDesEditFeldes,fileBuffer);
    
    // Speicher wieder freigeben:
    free(fileBuffer);
    


  • Und wenn das schöne Stück aus dem Internet kommen soll, dann am besten damit erst runterladen.


Anmelden zum Antworten