/ / Englisch C ++ - Programm auf fremdem OS - C ++, Sockets, Chat, Übersetzung

Englisch C ++ - Programm auf fremden OS - C ++, Sockets, Chat, Übersetzung

Ich habe ein Chat-System, das perfekt für Betriebssysteme in englischer Sprache funktioniert. Es verwendet den Multibyte-Zeichensatz sowie den Server, auf dem er betrieben wird.

Ich habe chinesische Kunden, die das Programm nutzen. Wenn Nachrichten empfangen werden, geschieht Folgendes: Wenn die Nachricht auf Chinesisch eingegeben wurde, werden keine Leerzeichen angezeigt. Wenn sie Englisch geschrieben wurde, werden Bits und Teile als Fremdzeichen angezeigt.

Irgendein Rat?

Antworten:

1 für die Antwort № 1

Da Sie Windows 7 für Client und Windows verwendenServer 2008 R2 für Server, ich glaube nicht, dass Ihr Problem auf eine Änderung von "endianness" zurückzuführen ist. Sie haben erwähnt, dass Sie einen "Multibyte-Zeichensatz" verwenden. Daher gehe ich davon aus, dass Ihre Daten keine der Standard-Unicode-Kodierungen verwenden, wie z B. utf-8 / UTF-16 / UTF-32, verwendet jedoch die Codeseiten im Pre-Unicode-Stil, um die Daten zu kodieren, wenn eine Codepage verwendet wird, wenn ein Client einen Text in den Chat eingibt und eine andere Codepage angezeigt wird Empfänger-PC wird der Text möglicherweise nicht richtig angezeigt.