2010-07-30 8 views
7

Zastanawiam się, dlaczego tak jest. Mam dwa unicode znaki z tej samej grupy LL, które jest dozwolone według specyfikacji: http://msdn.microsoft.com/en-us/library/aa664670%28VS.71%29.aspxNazwy klas Unicode w języku C# - dlaczego niektóre prace, gdy inni nie?

Jeden z nich pracuje, a druga daje błąd kompilacji, a nie mogę znaleźć żadnej dokumentacji na temat dlaczego tak jest:

to działa:

U + 0467 CYRILLIC mała litera LITTLE YUS ѧ

To nie:

U + 04FF CYRILLIC mała litera ha Zawał ӿ

Czy możesz mi pomóc znaleźć wzór?

+0

Którą wersję kompilatora używasz? – AakashM

+0

Wersja 3.5.30729.4926 – asgerhallas

Odpowiedz

11

U + 0467 pochodzi z Unicode 1.1, a U + 04FF z Unicode 5.0. Strona, do której się odnosisz, wspomina Unicode 3.0. Dlatego bazy danych Unicode kompilatora są po prostu niewystarczająco nowe.

+3

Wow. To była dobra i szybka odpowiedź, dzięki :) Czy mogę zapytać, gdzie znajdziesz wersję dla jednej postaci? – asgerhallas

+0

W tym przypadku sprawdziłem to na mapie znaków GNOME. Kolejnym bardzo dobrym źródłem jest fileformat.info: http://www.fileformat.info/info/unicode/char/04ff/index.htm – Philipp

+1

Dziękuję za link. To jest bardzo użyteczne! – asgerhallas

Powiązane problemy