CString teilen



  • Hallo,
    ich habe einen 3-zeiligen CString und will jede einzelne Zeile in einen separaten CString kopieren, ich habe es so versucht, aber die Strings erhalten immer etwas falsches:

    CString string1; // 3-Zeiler
    int x = string1.Find( '\n' );
    
    m_strVor = string1.Left(x-1); //Erste Zeile
    
    string2 = string1.Right(x);
    int y = string2.Find( '\n' );
    m_strMitte = string2.Left(y-1); // Mittlere Zeile
    m_strEnd = string2.Right(y);    // Letzte Zeile
    

    Es geht bestimmt auch anders und zwar so dass es funktioniert?



  • CString::Right zählt von hinten. Nimm Mid:

    string2 = string1.Mid(x);
    


  • danke, aber das geht auch nicht.
    Die erste Zeile ist korreckt,
    aber die mittlere und die letzte sind leer (m_strMitte,m_strEnd) nach der Zuweisung.



  • Peter_pgl schrieb:

    Die erste Zeile ist korreckt,

    Nö. Da müsste das letzte Zeichen fehlen.

    Bei Left darf nicht -1 stehen, aber dafür muss bei Mid +1 stehen.

    Übrigens: Kein c in "korrekt" 😉


Anmelden zum Antworten