Umwandlung von string nach CString und zurück



  • Ich habe einige Klassen, die mir Punktmengen in verschiedene Datenformate (*.xyz, *.wrl usw) übertragen. Das Ergebnis wird als string abgegeben und kann dann ohne Probleme gespeichert werden. Ich möchte aber gerne, dass das Ergebnis in einer CListBox angezeigt wird. Dazu muss ich das string (welches aus vielen Koordinatenzeilen besteht) in ein CString umwandeln. Wie kann ich das am besten bewerkstelligen?

    Und weil wir gerade dabei sind, wie kriege ich aus dem CString wieder ein string?

    Danke für Eure Hilfe! 👍



  • CString test("");
    string test1("hallo");

    test = test1.c_str();



  • Funktioniert danke.

    Leider habe ich jetzt ein weiteres Problem 🙄 . Ich möchte gerne das Ergebnisfile, welches jetzt als CString vorliegt anzeigen lassen. Der Berarbeiter wählt einen Koordinatensatz und ein Datenformat aus und dann soll in einem Anzeigefeld parallel das File in Form eines Textes angezeigt werden.

    Ich habe es mit CListBox und mit CEditControl probiert. Bei beiden sieht es dann so aus, dass alle Zeilen nicht untereinander sondern in eine gequetscht werden. Er erkennt anscheinend den Umbruch nicht. Nur wenn ich es als Static Text anzeige sieht es richtig aus z.B. so:

    begin
    0.000 0.000 0.000
    0.000 0.000 0.000....

    Da habe ich dann aber wieder keine vertikale Bildlaufleiste und bei einer langen Datei kann man halt nicht alles einsehen.

    Was kann ich tun? 😕



  • ich bin mir jetzt nicht ganz sicher, aber kann es sein, dass wenn du einen CString in einem Editfeld angeben willst, Zeilenumbruch nur mit /r/n geht? Probier das doch mal....

    vielleicht stell ich mir das mit der vertikalen Bildlaufleiste auch zu eifnach vor... aber kannst du das nicht bei den Eigenschaften von deinem Editfeld aktivieren?



  • Naja, wenn ich jede Zeile einzeln einfügen würde, möge das vielleicht klappen. Zumindest habe ich das mal so mit einer ClistBox in Verbindung mit dem Befehl AddString gemacht. Jetzt habe ich aber schon alle Zeilen in einem string bzw. einem CString. Dann klappt das eben nicht mehr. Ich müßte nach der alten Prozedur alle Zeilen voneinander trennen. Das kann aber nicht Sinn der Sache sein 😉 . Irgendwie muss ich die CListBox oder CEditCtrl dazu bringen, den Zeilenumbruch auch zu erkennen...


Anmelden zum Antworten