sprintf und das @ Zeichen



  • Hi an alle,

    ich formatiere mit sprintf einen stinrg und zwar so:

    sprintf(szFilename, "%s\\%S.dat", m_szPath, sFilename);
    

    sFilename ist ein CString.
    Klappt auch an und für sich wunderbar.

    Wenn nun mit im String sFilename ein @ - Zeichen auftaucht
    wird der String abgeschnitten und szFilename
    wird der String bis zum @ Zeichen übergeben, alles folgende wird
    nicht angehangen ebenso wenig das .dat.

    Was kann ich tun?

    Gruß

    CrazyPlaya



  • CString? Was soll das sein?

    %S erwartet einen wchar_t-String, benutz also lieber %s.



  • CString ich weiß das gehört nicht in dieses Forum:D.
    Kommt aus ATL.

    Genau deshalb benutze ich ja das %S, da der CString in einem %s nicht ausgegeben wird bzw. nur das erste Zeichen.



  • Hallo,

    Genau deshalb benutze ich ja das %S, da der CString in einem %s nicht ausgegeben wird bzw. nur das erste Zeichen.

    Das sind ja Methoden, ausprobieren, bis wenigstens etwas mehr als ein Zeichen erscheint, so geht das nicht gut 😃

    Vielleicht verbessert sich das Ergebnis hiermit:

    sprintf(szFilename, "%s\\%S.dat", m_szPath, ( PCXSTR ) sFilename);
    

    ?

    MfG,

    Probe-Nutzer



  • Korrektur, wenn es kein Unicode ist:

    sprintf(szFilename, "%s\\%s.dat", m_szPath, ( PCXSTR ) sFilename);
    

    MfG,

    Probe-Nutzer


Anmelden zum Antworten