1 / 7

Глобализация и локализация

Глобализация и локализация. Локализация – адаптация приложения к национальным особенностям страны (региональные настройки). Глобализация - адаптация приложения к работе с разными языками и региональными настройками.

Télécharger la présentation

Глобализация и локализация

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Глобализация и локализация Локализация – адаптация приложения к национальным особенностям страны (региональные настройки). • Глобализация - адаптация приложения к работе с разными языками и региональными настройками. • Региональные настройки(culture) ( другой термин – региональные стандарты ) определяют • язык • символ валюты • формат даты • формат вывода чисел (точка/запятая) • В .Net Framework для этих целей предусмотрены • механизм сателлитных сборок (satellite assemblies) • классы из пространств имен System.Globalization System.Resources

  2. Региональные настройки (culture) • Региональные настройки (culture) идентифицируются строкой, содержащей главный(primary)и вспомогательный (secondary) тэги, или Int32 кодом (LCID - local culture identifier). • Коды определены в стандарте Internet RFC 1766. • Имена “язык” – “страна/регион” определены в стандартах ISO (International Standards Organization) • Региональные настройки делятся на три группы: Invariant – не зависят от языка и страны, имя “ ” (код !=0); Neutral – определяют только язык, имя “ru”, “en” ( два символа в нижнем регистре); Specific – определяют язык и страну/регион, имя “en-CA”, “en-GB”, “ru-RU”, “tt-RU”;

  3. Класс System.Globalization.CultureInfo • Текущие региональные настройки определяются значениями двух свойств выполняемого потока: • Thread.CurrentCulture– формат даты/чисел/валютыThread.CurrentUICulture – загружаемые ресурсы • Свойства имеют тип CultureInfo. [Serializable] publicclassCultureInfo : ICloneable, IFormatProvider • Ссылка на объекты класса CultureInfo передается как параметр методам, использующим информацию о региональных настройках (culture). • Конструкторы класса System.Globalization.CultureInfo (4) publicCultureInfo( intculture ); publicCultureInfo( stringname ); publicCultureInfo( intculture, booluseUserOverride ); publicCultureInfo( stringname, booluseUserOverride );

  4. Класс System.Globalization.CultureInfo -2 • С каждым региональным стандартом (culture) по умолчанию связаны конкретные форматы даты/числа/валюты.Пользователь может изменить эти установки в ControlPanel (Date, Time, Language, and Regional Options). • Конструкторы с одним параметром инициализируют CultureInfo пользовательскими значениями форматов даты/числа/валюты. • Конструкторы с двумя параметрами могут инициализировать CultureInfo как пользовательскими значениями форматов даты/числа/валюты (true), так и значениями по умолчанию (false). • В классе CultureInfo определены свойства (более 20), связанные с региональными настройками и форматами даты/числа/валюты, например, publicvirtualDateTimeFormatInfoDateTimeFormat {get; set;} publicvirtualNumberFormatInfoNumberFormat {get; set;} publicvirtualTextInfoTextInfo {get;} publicboolUseUserOverride {get;}

  5. Региональные настройки в методе ToString() • В некоторых классах ( например, Int32, Double) метод ToString() перегружен и использует значения свойства класса CultureInfo с информацией о текущих значениях региональных настроек (culture): publicvirtualstringToString( IFormatProviderprovider ); publicvirtualstringToString( stringformat, IFormatProviderprovider ); • Интерфейс IFormatProvider. public interface IFormatProvider {object GetFormat( Type formatType ); } реализуют классы CultureInfo, DateTimeFormatInfo, NumberFormatInfo, вкоторых есть информация о региональных стандартах(culture).

  6. Региональные настройки в методе ToString(). Пример int i = 100; //CultureInfo для английского языка в USA CultureInfo us = new CultureInfo("en-US"); Console.WriteLine(i.ToString("c", us)); //CultureInfo для России, форматы по умолчанию CultureInfo ru = new CultureInfo("ru-RU", false); Console.WriteLine(i.ToString("c", ru)); //CultureInfo для России, форматы из установок пользователя CultureInfo ruu = new CultureInfo("ru-RU", true); Console.WriteLine(i.ToString("c", ruu)); /* Output для настройки в ControlPanelCurrencySymbol: рб $100.00 100,00р. 100,00рб */

  7. Класс System.Globalization.CultureInfo -3 • Региональные настройки (culture) – это свойство потока. • По умолчанию региональные настройки потока определяются значениями, заданными в профиле пользователя. Чтобы программно изменить региональные настройки, необходимо присвоить значение свойству потока. • Свойства класса CultureInfo с информацией о текущих значениях региональных настроек (culture): publicstaticCultureInfoCurrentCulture {get;}// установки //CurrentThread publicstaticCultureInfoCurrentUICulture {get;} // установки, // которые использует ResourceManager publicvirtualboolIsNeutralCulture {get;} // являются ли // региональные настройки CurrentThreadнейтральными

More Related