Fehler bei Unicode ausgabe

Ozzy Ozborn

Erfahrenes Mitglied
Hi,

ich möchte in meinem Programm ein Unicode-Zeichen ausgeben. Dies mache ich einfach mit "\u00B5". Doch leider haut er mit immer ein "Â" davor. Hat jemand von Euch vielleicht eine Idee, woran das liegen könnte?

MfG, Ozzy
 
Hi.

Stellt sich die Frage mit welcher Kodierung du das ausgibst und welche Kodierung der Editor/die Anzeige verwendet den/die du benutzt. Stimme die beiden aufeinander ab und es wird ein µ anzeigen.

Gruß
 
Hi,

wie kann ich das denn herausfinden? Das Problem taucht übrigens auch dann auf, wenn ich das Zeichen irgendwoher kopiere, und dann einfüge, also wenn ich direkt das "mikro" im Text stehen habe, und nicht durch den Unicode-befehl erzeuge.

MfG, Ozzy
 
Hi.

Da mußt du schon mal etwas mehr Informationen liefern. Code wäre auch nicht schlecht.

Wo fügst du das Zeichen ein? Wie wird das Zeichen angezeigt? Mit welchen Editor / Programm?

Gruß
 
Hi,

also ich programmiere mit Qt, und füge es dort in einen ganz normalen String ein. Ausgegeben wird das Zeichen dann in einem Fenster, in einer ComboBox.
Ich habe gerade noch einmal festgestellt, dass es auch bei qDebug() flasch ausgegeben wird, wenn ich es aber auf die Standardausgabe umleite, als ganz normal mit
std::cout << "\u00B5";
dann wird es richtig angezeigt. Scheint wohl also etwas mit Qt zu sein. Hast Du da denn vielleicht auch eine Idee?

MfG, Ozzy
 
Hi.

So sollte es funktionieren:
C++:
QString my(QChar(0x00b5));

// oder:

QString my = QString::fromWCharArray(L"my = \u00b5");
Gruß
 
Zurück