CString aufteilen



  • Ich habe einen CString conn = "wert1,wert2,wert3,wert4". Ich möchte die einzelnen Werte in je eine Variable speichern. Gibt es da eine Möglichkeit dafür?



  • Gibt es !
    Lösung:
    Das Forum bzw. die FAQ durchsuchen.
    Gibt sogar eine Thread auf der ersten Seite hier.

    [ Dieser Beitrag wurde am 29.01.2003 um 13:01 Uhr von Unix-Tom editiert. ]



  • Wer lesen kann ist klar im Vorteil...

    @Unix-Tom sowas kannste dann ruhig auch schließen 😉



  • @devil81: schliessen wäre nciht angebracht...
    wir glaub ja noch an das gute (naja ausser bei dir 😉 ) im user und hoffen das er irgendwann selbständig erstmal nachschauen wird... 🙂



  • Nein erst auf der zweiten Seite!!!;)
    CString trennen



  • Wo er gepostet hat aber nicht ätsch :p



  • Erstmals Danke für die Hilfe von Einigen. Und bei den anderen: "Entschuldigung das ihr noch nix übersehen habt". 😮

    Ich bin zu folgendem gekommen:

    int stelle = conn.Find(",");
                int gesamt= conn.GetLength() - stelle;
                conn.Delete(stelle, gesamt);
    

    Ich muss dazu sagen, dass in der Variablen conn folgendes vorliegt "eins, zwei, drei, vier". Ich brauche aber nur das was vor dem 1. Komma steht. Das scheint auch zu funktionieren, aber nicht mit allen Variableninhalten von conn.
    Könnte mir damit jemand helfen



  • Jetzt kannst du dich nicht mehr ausreden das du etwas überlesen hast. Insbesonders da die Links gepostet wurden.

    Du löscht alles hinter dem ersten Suchzeichen. Somit sind deine restlichen werte nicht mehr vorhanden.
    Weiters musst du eine Schleife drüberlaufen lassen und jedesmal nach dem nächsten Suchzeichen suchen und dann Mid(posvorher,poslast) bis das zzeichen nicht mehr gefunden wurde.
    Dies wird aber alles in den Postings hinten den Links erklärt.



  • Bevor ich zum 1. mal hier gepostet hatte, hatte ich keinen Eintrag gefunden. Ich habe gesucht.

    Das ist schon richtig das er nachdem ersten Trennungszeichen alles löscht. Ich muss dazu sagen das es in einer while-Schleife ist. Die Variable conn wird gefüllt und der 1. Wert ausgelesen, danach wieder auf 0 gesetzt. Ich habe festgestellt das es bei jedem 2. Durchlauf funktioniert. Kann mir aber nicht erklären wieso.

    mfG



  • Dann poste bitte die ganze Funktion.



  • nachfolgend der Code:

    while(conn != "ende")
        {
            i++;
            CString connstr=_T("CONN");
            CString nummerstr; nummerstr.Format(_T("%d"),i);
            connstr += nummerstr;
    
             (_T("CONNECTIONS"), connstr, "ende", conn.GetBuffer(500), sizeof(conn)+500, home);
    
            if (conn != "ende")
            {
                int stelle;
                int differenz;
                int gesamt;
                gesamt = conn.GetLength();
    
                stelle = conn.Find(",");
                differenz=  gesamt - stelle;
                conn.Delete(stelle, differenz);
    
                m_ctlConnName.AddString(conn);
            }
                conn.ReleaseBuffer();
    
        }
    

Anmelden zum Antworten