Textdatei Lesen und zeilen ordnen



  • Hallo,

    Ich möchte eine Textdatei lesen aber Zeile für Zeile.

    z.b. im Textdatei steht

    111111
    222222
    333333

    jetzt möchte ich das
    111111 im Eingabefeld 1 angezeigt wird
    222222 im Eingabefeld 2 angezeigt wird und
    333333 im Eingabefeld 3 steht.

    mit *.Find("111111") will ich das nicht mehr machen möchte eine anderes Beispiel
    wie man das noch machen könnte.

    Danke euch! :p



  • Boardsuche machts möglich...

    http://www.c-plusplus.net/forum/viewtopic.php?t=92512&highlight=readstring

    Gruß
    :: NoName ::



  • NoName ich habe den code gestern ausprobiert und selber von mir noch was hinzugefügt es geht nur mit MessageBox zeile für zeile.
    Erste MessageBox zeigt mir
    111111

    Zweite MessageBox
    222222

    dritte MessageBox
    333333

    wie kann ich aber das so auf den m_Edit1, m_Edit2, m_Edit3 alle zeilen verteilen???



  • Naja, wenn du weißt das erst 1111111 dann 2222222 und dann 33333 rannkommt, dann kannst du nur ReadString verwenden ohne eine Schleife...

    // ...
    file.ReadString(str1);
    SetDlgItemText(ID_..., str1);
    
    file.ReadString(str2);
    SetDlgItemText(ID_..., str2);
    
    usw usw..
    

    Das kannst du mehrmals wiederholen...

    Gruß
    :: NoName ::



  • Danke NoName 😉

    d.h. zeile 1-4 ist dann str1, str2, str3, str4 ??

    bin weiter gekommen danke nochmal. 🕶

    wie ist das eigentlich mit getline

    soll zur zeile 3 gehen wie muss ich den befehl richtig schreiben??



  • Edd schrieb:

    d.h. zeile 1-4 ist dann str1, str2, str3, str4 ??

    Hmm,besser wäre wenn du nur eine CString Variable benutzt, da str immer wieder neu formatiert wird. Hat den gleichen Sinn und Zweck...

    CString strText;
    
    file.ReadString(strText);
    SetDlgItemText(ID_..., strText);
    
    file.ReadString(strText);
    SetDlgItemText(ID_..., strText);
    
    usw usw...
    

    Edd schrieb:

    wie ist das eigentlich mit getline

    getline wird nur bei Streams verwendet...nicht bei CFile::CFile()

    Gruß
    :: NoName ::



  • Mein Ziel ist das ich in eine Textdatei erst nach 8te Zeile was Schreibe.
    und die ersten 8 Zeilen ignoriert .

    gibt mir bitte ein tip

    😕 😕



  • 😞



  • Keine Zeit -> muss in die Schule,
    aber empfehle die M$-Bibel (MSDN) unter CStdioFile / CFile (je nach dem was du verwendest, CStdioFile ist von CFile abgeleitet) unter den Funktionen die bei Position aufgezählt sind.

    Cya
    me



  • Hmm, also möchtest du nur am Ende der Datei springen und dort was reinschreiben ...

    Kein Problem, dass geht mit der Funktion CFile::SeekToEnd();

    CFile file;
    
    // [...]
    
    file.SeekToEnd();
    // Hier restlichen Code fürs schreiben
    

    Gruß
    :: NoName ::


Anmelden zum Antworten