Konvertieren von Zahlen mit normaler Breite in Zahlen mit halber Breite

Zusammenfassung

Beim Konvertieren der Unicode-Zahlen mit normaler Breite (u + FF10-u + FF19) in standardmäßige Zahlen mit halber Breite (u +0030-u + 0039) bei Verwendung von WideCharToMultiByte schlägt die Konvertierung unter Windows 95 und 98 fehl. Verwenden Sie die API-LCMapString mit Flag LCMAP_HALFWIDTH, um die Zeichen in voller Breite in Zeichen mit halber Breite umzuwandeln.

Weitere Informationen

Da die W-Version dieser API unter Windows 95 nicht funktioniert, muss Windows 98 1 die Zeichen in voller Breite aus Unicode in geeignete DBCS-Zeichenfolgen konvertieren und dann LCMapString aufrufen, um die Konvertierung durchführen zu können. Im folgenden finden Sie ein Beispiel für die Verwendung von Unicode-Zahlen in normaler Breite in traditionellem Chinesisch, vereinfachtem Chinesisch, Japanisch und Koreanisch:

#include <stdio.h>#include <tchar.h>#include <windows.h>void main(void){WCHAR T[2] = {65301, 0};TCHAR dbcs[3], conv[3];WideCharToMultiByte(CP_ACP, 0, T, -1, dbcs, sizeof(dbcs), NULL, NULL);int nRes = LCMapString(LOCALE_USER_DEFAULT, LCMAP_HALFWIDTH,                                                       dbcs,sizeof(dbcs),conv,sizeof(conv));printf("%s\n",conv);}

Wenn Sie die Konvertierung für Windows 95 und Windows 98 vornehmen möchten, installieren Sie eine der vier Codepages (950 für traditionelles Chinesisch, 936 für vereinfachtes Chinesisch, 932 für Japanisch und 949 für Koreanisch) auf dem System, und legen Sie die Code Page-und Gebietsschema-ID-Parameter in den obigen API-aufrufen explizit fest.

Informationsquellen

Wenn Sie weitere Informationen zum Installieren einer Codepage wünschen, klicken Sie auf die folgende Artikelnummer, um den Artikel in der Microsoft Knowledge Base anzuzeigen:

So installieren Sie eine Codepage

Benötigen Sie weitere Hilfe?

Ihre Office-Fähigkeiten erweitern
Schulungen erkunden
Neue Funktionen als Erster erhalten
Microsoft Insider beitreten

War diese Information hilfreich?

Vielen Dank für Ihr Feedback!

Vielen Dank für Ihr Feedback. Es klingt, als ob es hilfreich sein könnte, Sie mit einem unserer Office-Supportmitarbeiter zu verbinden.

×