Wie man C ++ dazu bringt, nicht druckt, uneingeschränkte Unicode zu bearbeiten

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Wie man C ++ dazu bringt, nicht druckt, uneingeschränkte Unicode zu bearbeiten

by Guest » 24 Feb 2025, 05:11

Ich habe Probleme damit, wie C ++ eine bestimmte Unicode -Zeichenfolge druckt. < /p>

Code: Select all

PSFormatForDisplayAlloc
Gibt eine formatierte Unicode -String -Darstellung eines Eigenschaftswerts zurück. Für Datumswerte fügt es einen Unicode U+200e links nach rechts (LRM) vor jeder Komponente des formatierten Datums ein. > ein nicht gedruckter Charakter sein. Visual Studio C ++ Std :: WCout und Wprintf überspringen sie jedoch nicht. Mit _setMode (_fileno (stdout), _o_u16text) , wprintf und std :: wCout drucken Sie einen Blindraum. Ohne diesen _setMode druckt Wprintf es als Fragezeichen und std :: wcout einfach fehlschlägt.

[*] I Am Erstellen mit Konfigurationseigenschaft: Zeichenset = Verwendung
Unicode -Zeichen -Set

Variante anders Propdesc_Format_flags Für Datum und Uhrzeit hilft nicht >

Code: Select all

    PWSTR pszDisplayValue = NULL;
hr = PSFormatForDisplayAlloc(key, propvarValue, PDFF_LONGDATE | PDFF_LONGTIME, &pszDisplayValue);
if (SUCCEEDED(hr))
{
// Method 1
std::wcout

Top