Net framework 5, а также среды Visual Studio 2012 и C#



Download 6,27 Mb.
Pdf ko'rish
bet262/658
Sana12.06.2023
Hajmi6,27 Mb.
#950840
1   ...   258   259   260   261   262   263   264   265   ...   658
Bog'liq
CLR via C Programmirovanie na platforme Microsoft NET Framework 4 5 na yazyke C


Глава.14 .Символы,.строки.и.обработка.текста
Методы, работающие с аргументом 
CompareOptions
, также поддерживают явную 
передачу информации о языке и региональных стандартах. Если установлен флаг 
Ordinal
или 
OrdinalIgnoreCase
, тогда методы 
Compare
игнорируют определенный 
язык и региональные стандарты.
Во многих программах строки используются для решения внутренних задач: 
представления имен путей и файлов, URL-адресов, параметров и разделов реестра, 
переменных окружения, отражения, XML-тегов, XML-атрибутов и т. п. Часто та-
кие строки вообще не выводятся, а используются только внутри программы. Для 
сравнения внутренних строк следует всегда использовать флаг 
StringComparison.
Ordinal
или 
StringComparison.OrdinalIgnoreCase
. Это самый быстрый способ 
сравнения, так как он игнорирует лингвистические особенности и региональные 
стандарты.
С другой стороны, если требуется корректно сравнить строки с точки зрения 
лингвистических особенностей (обычно перед выводом их на экран для поль-
зователя), следует использовать флаг 
StringComparison.CurrentCulture
или 
StringComparison.CurrentCultureIgnoreCase
.
ВниМание
Обычно.следует.избегать.использования.флагов.StringComparison InvariantCulture.
и.StringComparison InvariantCultureIgnoreCase .Хотя.эти.значения.и.позволяют.вы-
полнить.лингвистически.корректное.сравнение,.применение.их.для.сравнения.строк.
в.программе.занимает.больше.времени,.чем.с.флагом.StringComparison Ordinal.
или.StringComparison OrdinalIgnoreCase .Кроме.того,.игнорирование.региональных.
стандартов.—.совсем.неудачный.выбор.для.сортировки.строк,.которые.планируется.
показывать.пользователю 
ВниМание
Если.вы.хотите.изменить.регистр.символов.строки.перед.выполнением.простого.
сравнения,.следует.использовать.предоставляемый.String.метод.ToUpperInvariant.
или.ToLowerInvariant .При.нормализации.строк.настоятельно.рекомендуется.ис-
пользовать.метод.ToUpperInvariant,.а.не.ToLowerInvariant.из-за.того,.что.в.Microsoft.
сравнение.строк.в.верхнем.регистре.оптимизировано .На.самом.деле,.в.FCL.перед.
не.зависящим.от.регистра.сравнением.строки.нормализуют.путем.приведения.их.
к.верхнему.регистру 
Иногда для лингвистически корректного сравнения строк используют регио-
нальные стандарты, отличные от региональных стандартов вызывающего потока. 
В таком случае можно задействовать перегруженные версии показанных ранее 
методов 
StartsWith

EndsWith
и 
Compare
все они принимают аргументы 
Boolean
и 
CultureInfo
.
А теперь поговорим о лингвистически корректных сравнениях. Для представле-
ния пары «язык-страна» (как описано в спецификации RFC 1766) в .NET Framework 
используется тип 
System.Globalization.CultureInfo
. В частности, 
en-US
озна-


365
Тип.System String
чает американскую (США) версию английского языка, 
en-AU
— австралийскую 
версию английского языка, а 
de-DE
германскую версию немецкого языка. В CLR 
у каждого потока есть два свойства, относящиеся к этой паре и ссылающиеся на 
объект 
CultureInfo
.
‰
CurrentUICulture
служит для получения ресурсов, видимых конечному поль-
зователю. Это свойство наиболее полезно для графического интерфейса поль-
зователя или приложений Web Forms, так как оно обозначает язык, который 
следует выбрать для вывода элементов пользовательского интерфейса, таких 
как надписи и кнопки. По умолчанию при создании потока это свойство потока 
задается Win32-функцией 
GetUserDefaultUILanguage
на основании объекта 
CultureInfo
, который указывает на язык текущей версии Windows. При исполь-
зовании MUI-версии (Multilingual User Interface) Windows это свойство можно 
задать с помощью утилиты Regional and Language Options (Язык и региональные 
стандарты) панели управления.

Download 6,27 Mb.

Do'stlaringiz bilan baham:
1   ...   258   259   260   261   262   263   264   265   ...   658




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish