[gelöst] Unicode-Zeichen ausgeben

Alles rund um die Programmierung mit Qt
Antworten
Ozzy
Beiträge: 141
Registriert: 24. Oktober 2007 10:18

[gelöst] Unicode-Zeichen ausgeben

Beitrag von Ozzy »

Hi,

ich habe nur eine kleine Frage: wie kann ich in einem QString ein Unicode-Zeichen ausgeben, von dem ich nur den Hex-Code habe?

Vielen Dank im Voraus, Ozzy
Zuletzt geändert von Ozzy am 17. November 2007 09:56, insgesamt 1-mal geändert.
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Re: Unicode-Zeichen ausgeben

Beitrag von macman »

Ist schon toll wie irreführend manche Fragen gestellt werden :-) Ich verstehe es so, das Du ein Unicode-Zeichen in einen String einfügen willst, von dem du nur die Unicodenummer hast. Dazu solltest Du dir QChar angucken.

Ansonsten wüsste ich nicht wie man IN einem String etwas ausgeben kann.
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
Ozzy
Beiträge: 141
Registriert: 24. Oktober 2007 10:18

Beitrag von Ozzy »

Hi,

habe es jetzt herausgefunden: um ein Unicodezeichen einzufügen, braucht man einfach nur: \uhexcode, also z.B. \u00E3. Nur leider macht er bei mir immer ein "A" mit einem Dach drüber davor... Kennt jemand dieses Phänomen???

MfG, Ozzy
Korgen
Beiträge: 42
Registriert: 28. März 2006 16:37

Beitrag von Korgen »

schonmal drüber nachgedacht, dass es daran liegen könnte, dass U00E3 eben ein a mit 'ner Tilde drauf ist??

http://www.fileformat.info/info/unicode ... /index.htm

alternativ:
http://www.unicode.org
Ozzy
Beiträge: 141
Registriert: 24. Oktober 2007 10:18

Beitrag von Ozzy »

Sorry, blöd von mir, habe das falsche Unicodezeichen angegeben: ich möchte eigentlich das Micro-Zeichen, in 00B5. Weiß echt nicht, wie ich auf das 00E3 gekommen bin...
Ozzy
Beiträge: 141
Registriert: 24. Oktober 2007 10:18

Beitrag von Ozzy »

Hi,

aber das Problem ist geblieben. Im Dialog in der ComboBox wird immer noch das  davor angezeigt, genauso wenn ich das Zeichen mit QDebug() ausgebe. Wenn ich es aber auf die Standardausgabe umleite mit:
std::cout << "\u00B5";
Dann wird das Zeichen richtig angezeigt.
Habt Ihr da vielleicht noch eine Idee???

MfG, Ozzy
Ozzy
Beiträge: 141
Registriert: 24. Oktober 2007 10:18

Beitrag von Ozzy »

Hi,

habe es gelöst bekommen:
QChar(0x00b5)

Vielen Dank noch einmal an alle, die sich den Kopf zerbrochen haben!!!

MfG, Ozzy
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

Hast Du da wirklich 3 Tage für gebraucht, wo die Lösung doch schon in der ersten Antwort stand? :-)
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
Antworten