Zeilenumbruch in CEdit: \r\n funktioniert nicht!



  • Hi,
    ich habe ein CEdit Feld, in das ich aus einer Datei einen String einlese. Obwohl der String ein \r\n enthält das Editfeld auf Mehrzeilig und Return möglich gesetzt ist bekomm ich einfach keinen Zeilenumbruch, er zeigt mir das \r\n mit an! Weiß jemand Rat??!



  • Hi
    Achtung, das \r\n darf nicht so in der Textdatei stehen!!!!!
    (Sprich: wenn du eine Textdatei mit folgendem Inhalt hast: "Hallo\r\nTest" wird der Text wortbuchstäblich 😉 in das Textfeld übernommen).

    Grüße Rapha



  • Also müßte ich den String splitten?!
    stringC=stringA+"\r\n"+"stringB ?!
    Geht das net anders?!



  • Äh nein, ich meine was anderes 😉

    Ich gehe davon aus, das du eine Textdatei direkt in ein CEdit Control "kopierst".
    Nun ist es so, dass in einer standard Windows Textdatei das Zeichen \n für ein Return steht, in einem CEdit aber das \r\n.

    Somit würde ich nach dem Einlesen der Textdatei in einen String, alle \n Zeichen im String durch ein \r\n ersetzen, und dann erst den String in das CEdit kopieren.

    Oder liege ich mit meinen Spekulationen daneben 😕

    Grüße Rapha



  • Es ist bißchen anders. Die Strings kommen aus einer Binärdatei, ich lese per CArchive direkt in eine Variable

    ar <<string;
    

    Den Variableninhalt kopiere ich dann in die CString Membervariable des Edits. Also in string steht dann z. B. "Die ist ein \r\n test". Der Zeilenumbruch wird allerdings nicht berücksichtigt. Aber ich werd es mal so probieren wie du es geschrieben hast!



  • Leider hat das auch nicht funktioniert, er zeigt mir immer noch \r\n an und macht keinen Umbruch 😕 😮



  • Versuch doch mal sowas:

    CString strZeile;
    // jetzt liest du aus der Datei in strZeile rein
    strZeile.Replace("\\r\\n", "\r\n");
    

    Das sollte gehen. 🙂



  • juhu, funktioniert!!! 🙂
    BIG THX!!


Anmelden zum Antworten