Sdílet prostřednictvím


U některých znaků v latince se změnila kategorie Unicode.

Char metody nyní vrací správnou kategorii Unicode pro znaky v oblasti latin-1. Kategorie odpovídá standardu Unicode.

Změna popisu

V předchozích verzích Char .NET používaly metody pevný seznam kategorií Unicode pro znaky v oblasti Latin-1. Standard Unicode ale od implementace těchto rozhraní API změnil kategorie některých z těchto znaků a vytvořil nesrovnalosti. Kromě toho došlo také k nesrovnalostem mezi Char rozhraními API a CharUnicodeInfo rozhraními API, které se řídí standardem Unicode. V .NET 5 a novějších verzích Char používají metody a vracejí kategorii Unicode, která odpovídá standardu Unicode pro všechny znaky.

Následující tabulka ukazuje znaky, jejichž kategorie Unicode se v .NET 5 změnily:

Znak Kategorie Unicode
v předchozích verzích .NET
Kategorie Unicode
v .NET 5 a novějších verzích
§ (\u00a7) OtherSymbol OtherPunctuation
znaky (\u00aa) LowercaseLetter OtherLetter
SHY (\u00ad) DashPunctuation Format
¶ (\u00b6) OtherSymbol OtherPunctuation
º (\u00ba) LowercaseLetter OtherLetter

Zavedená verze

.NET 5.0

Pokud máte kód, který získá kategorii znaků Unicode pomocí Char třídy a předpokládá, že kategorie se nikdy nezmění, možná ji budete muset aktualizovat.

Důvod změny

Tato změna byla provedena tak, aby kategorie vrácené typem Char byly konzistentní se standardem Unicode i typem CharUnicodeInfo .

Ovlivněná rozhraní API

Kromě toho každá třída, která závisí na Char získání kategorie znaků Unicode, Regexnapříklad , je ovlivněna touto změnou.