tutorials.de Buch-Aktion 02/2012
ERLEDIGT
JA
ANTWORTEN
8
ZUGRIFFE
651
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    TheTank TheTank ist offline Mitglied
    Registriert seit
    Jul 2010
    Beiträge
    17
    Hallo
    welche Möglichkeiten gibt es eine Variable vom Typ char* in eine Variable vom Typ CString umzuwandeln Habe es wie folgt versucht, funktioniert aber nicht!!

    Code :
    1
    
            m_strDaten = CString(m_sBufRes);

    Ich verwenden VC 6.0
     

  2. #2
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.098
    Moin,

    schau mal hier:
    http://www.henkessoft.de/C++/MFC/CString.htm

    Gruß
    Klaus
     
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

  3. #3
    _GST_ Tutorials.de Gastzugang
    Inwiefern manifestiert sich dieses "geht nicht"?

    PS:
    Merkregel Nr. 1: "Geht nicht" ist keine gültige Problembeschreibung!
     

  4. #4
    Avatar von vfl_freak
    vfl_freak vfl_freak ist offline Mitglied Diamant
    Registriert seit
    Aug 2007
    Ort
    Niedersachsen
    Beiträge
    2.098
    [OFFTOPIC]

    Moin,

    Zitat Zitat von _GST_ Beitrag anzeigen
    PS:
    Merkregel Nr. 1: "Geht nicht" ist keine gültige Problembeschreibung!
    da kennst Du unseren Chef aber schlecht .....
    ok, er sagt meist "Tut nicht" .....

    Gruß
    Klaus

    [/OFFTOPIC]
     
    Es ist noch kein Meister vom Himmel gefallen - sonst hätte man schon längst seine Leiche gefunden !!

    Falls ich helfen konnte, wäre eine Bewertung oder ein Danke nett ;-)
    -------------------------------------------------------------------------------------------------
    Ich beantworte keine Fragen per PN !!
    Stellt Eure Fragen im Forum - dann haben alle etwas davon !!

  5. #5
    MCoder MCoder ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jul 2005
    Ort
    München
    Beiträge
    2.425
    Hallo TheTank,

    normalerweise tut's schon eine einfache Zuweisung (dein Code ist aber auch ok):
    Code :
    1
    
    m_strDaten = m_sBufRes;
    Probleme würde es in Unicode-Projekten geben (ist allerdings bei VC6 noch keine Standardvorgabe) , da char und CString dann nicht zusammenpassen.

    Gruß
    MCoder
     
    "The three chief virtues of a programmer are: Laziness, Impatience and Hubris."
    --- Larry Wall

  6. #6
    TheTank TheTank ist offline Mitglied
    Registriert seit
    Jul 2010
    Beiträge
    17
    Es ist aber ein Unicode Projekt darum kann ich nicht einfach den CString in das char schreiben, da bekomme ich sofort Error's
     

  7. #7
    _GST_ Tutorials.de Gastzugang
    Dann geht das natürlich nicht. Warum ahst du überhaupt char* als String in einem Unicodeprojekt?

    MultiByteToWideChar
     

  8. #8
    1337CoderxD Tutorials.de Gastzugang
    Weiss nicht, ob eien Antwort noch nötig ist, aber für die, die über Google den Weg finden:
    char* szTmp = "Hallo";
    WCHAR lpTmp[128];
    swprintf(tmp, 128, L"%s", szTmp);
    CString lpCStr = lpTmp;

    So wandelt man einen ANSII in einen Unicode string um.
     

  9. #9
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    7.983
    Hi.
    Zitat Zitat von 1337CoderxD Beitrag anzeigen
    char* szTmp = "Hallo";
    WCHAR lpTmp[128];
    swprintf(tmp, 128, L"%s", szTmp);
    CString lpCStr = lpTmp;

    So wandelt man einen ANSII in einen Unicode string um.
    Nein, so macht man das auf keinen Fall, weil das nicht funktioniert.

    Konvertieren kann man z.B. mit der mbstowcs Funktion oder wie schon angesprochen mit der Windows API Funktion MultiByteToWideChar. (\edit oder mit dem A2W Makro der ATL)

    Gruß
    Geändert von deepthroat (11.10.10 um 15:19 Uhr)
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

Ähnliche Themen

  1. char* to CString
    Von TheTank im Forum C/C++
    Antworten: 8
    Letzter Beitrag: 07.09.10, 15:37
  2. CString zu char
    Von Dipsi im Forum VisualStudio & MFC
    Antworten: 8
    Letzter Beitrag: 11.07.10, 18:40
  3. 'class CString' to 'char *'
    Von shader09 im Forum C/C++
    Antworten: 1
    Letzter Beitrag: 26.10.07, 14:59
  4. CString in char
    Von napstermania im Forum VisualStudio & MFC
    Antworten: 3
    Letzter Beitrag: 18.10.04, 23:06
  5. CString -> char* Problem mit getline()
    Von tantor im Forum VisualStudio & MFC
    Antworten: 3
    Letzter Beitrag: 23.06.04, 08:20