Jak převést čísla s plnou šířkou na čísla s poloviční šířkou

Shrnutí

Při převodu čísel Unicode s plnou šířkou (U + FF10-U + FF19) na standardní čísla s poloviční šířkou (U +0030-U + 0039) při používání WideCharToMultiByte neproběhne převod ve Windows 95 a 98. K převodu znaků s plnou šířkou na znaky s poloviční šířkou by měl LCMapString používat LCMAP_HALFWIDTH příznak API.

Další informace

Vzhledem k tomu, že tato verze rozhraní API W nefunguje ve Windows 95 a Windows 98 1 potřebuje převést znaky s plnou šířkou z Unicode na správné řetězce DBCS a pak převádět voláním LCMapString. Tady je ukázka práce s čísly Unicode s plnou šířkou v tradiční čínštině, zjednodušené čínštině, japonštině a korejštině:

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

Chcete-li provést převod pro Windows 95 a Windows 98, nainstalujte jednu ze čtyř kódových stránek (950 pro tradiční čínštinu, 936 pro zjednodušenou čínštinu, 932 pro japonštinu a 949 pro korejštinu) v systému a explicitně v rozhraních API volejte parametry kód kódové stránky a národního prostředí.

Odkazy

Další informace o instalaci kódové stránky najdete v následujícím článku znalostní báze Microsoft Knowledge Base:

164948 Jak nainstalovat znakovou stránku

Potřebujete další pomoc?

Rozšiřte své znalosti a dovednosti
Projít školení
Získejte nové funkce jako první
Připojit se k programu Microsoft Insider

Byly tyto informace užitečné?

Děkujeme za váš názor!

Děkujeme vám za váš názor! Pravděpodobně bude užitečné, když vás spojíme s některým z našich agentů podpory Office.

×