Kokkuvõte

Kui teisendate täieliku laiusega Unicode ' i numbrid (U + FF10-U + FF19) standardi poole laiusega numbriteks (U +0030-U + 0039), siis WideCharToMultiByte kasutamisel ei õnnestu selle teisendamine opsüsteemis Windows 95 ja 98. Kasutada tuleks API LCMapString koos lipu LCMAP_HALFWIDTHga, et teisendada täis-laiuse märgid poole laiusega märkideks.

Lisateave

Kuna selle API W-versioon ei tööta opsüsteemis Windows 95 ja Windows 98 1 peab teisendama täieliku laiusega märgid Unicode ' ist õigetele DBCS-stringidele, ja seejärel helistage teisenduse tegemiseks LCMapString. Siin on näide, mis töötab täieliku laiusega Unicode ' i numbritega traditsioonilises hiina keeles, lihtsustatud Hiina, Jaapani ja Korea keeles.

#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);}

Kui soovite, et teisendus töötaks opsüsteemis Windows 95 ja Windows 98, installige ühe neljast koodileht (950 traditsioonilise hiina keele jaoks, 936 lihtsustatud hiina keele jaoks, Jaapani keele jaoks mõeldud Jaapani ja 932 jaoks) süsteemile ja määrake täpselt ülaltoodud API-kõnede jaoks koodileht ja lokaadi ID parameetrid.

Viited

Lisateavet koodileht installimise kohta leiate Microsofti teabebaasi artikli kuvamiseks järgmisel artiklinumbril:

164948 Lehe koodileht installimine

Kas vajate veel abi?

Täiendage oma oskusi
Tutvuge koolitusmaterjalidega
Kasutage uusi funktsioone enne teisi
Liitu Microsofti Insideri programmis osalejad

Kas sellest teabest oli abi?

Kui rahul te tõlkekvaliteediga olete?
Mis mõjutas teie hinnangut?

Täname tagasiside eest!

×