spark.formattersCurrencyFormatter Класс CurrencyFormatter обеспечивает форматирование и анализ денежных значений с учетом особенностей локали.The <s:CurrencyFormatter> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:

  <s:CurrencyFormatter 
    Properties
    currencyISOCode="locale and OS dependent"
    currencySymbol="locale and OS dependent"
    negativeCurrencyFormat="locale and OS dependent"
    positiveCurrencyFormat="locale and OS dependent"
    useCurrencySymbol="false"
  />
  
]]>
mx.formatters:IFormatterspark.formatters.supportClasses:NumberFormatterBase Класс CurrencyFormatter обеспечивает форматирование и анализ денежных значений с учетом особенностей локали.

Это класс-оболочка, включающий flash.globalization.CurrencyFormatter. Поэтому специфичное для локали форматирование обеспечивает flash.globalization.CurrencyFormatter. Класс CurrencyFormatter, который может применяться в объявлениях MXML, использует стиль локали для запрашиваемого имени идентификатора локали и содержит привязываемые методы и свойства.

Класс flash.globalization.CurrencyFormatter использует базовую операционную систему для форматирования функциональности и предоставления данных, относящихся к конкретной локали. В некоторых операционных системах, не поддерживающих классы flash.globalization, класс оболочки обеспечивает резервные функциональные возможности.

flash.globalization.CurrencyFormatterNumberFormatterCurrencyFormatter Создает новый объект CurrencyFormatter, чтобы отформатировать числа, представляющие денежные суммы в соответствии с правилами данной локали. Конструирует новый объект CurrencyFormatter для форматирования чисел, представляющих денежные суммы, в соответствии с условиями данной локали.

Стиль locale определяет локаль для этого класса. Стиль locale можно установить следующими способами.

  • С использованием класса в объявлении MXML и наследованием локали из документа, содержащего объявление.
  • Пример:
          <fx:Declarations> 
                 <s:CurrencyFormatter id="cf" /> 
          </fx:Declarations>
          
  • С использованием объявления MXML и указанием значения локали в списке назначений.
  • Пример:
          <fx:Declarations> 
              <s:CurrencyFormatter id="cf_Japanese" locale="ja-JP" /> 
          </fx:Declarations>
          
  • Вызов метода setStyle(), например cf.setStyle("locale", "ja-JP")
  • Наследование стиля из UIComponent путем вызова метода addStyleClient() UIComponent.

Если стиль locale не установлен одним из вышеперечисленных способов, экземпляр этого класса добавляется как StyleClient в topLevelApplication и наследует стиль locale из объекта topLevelApplication при вызове получателя свойств, зависящего от locale, или метода, зависящего от locale.

Многие свойства этого класса автоматически устанавливаются на основе стиля locale. При изменении стиля locale все свойства, которые не были явно указаны, будут обновлены в соответствии с новой локалью. Обратите внимание, что фактическая используемая локаль определяется в свойстве actualLocaleIDName.

Примечание. При использовании резервной локали для свойств валюты определены значения по умолчанию, в результате чего для свойства currencySymbol или currencyISOCode могут быть указаны непредвиденные значения. Рекомендуется проверить значения свойств currencySymbol и currencyISOCode, прежде чем форматировать денежную сумму.

actualLocaleIDNamelastOperationsStatus
format Создается строка, которая представляет денежную сумму, отформатированную в соответствии с текущими свойствами данного объекта CurrencyFormatter, включая свойства locale, useCurrencySymbol, currencySymbol или currencyISOCode.Строка, содержащая отформатированное значение валюты. valueОбъект, содержащий числовое значение, которое требуется отформатировать в строку валюты. Если объект не является Number, то он будет преобразован в число с помощью функции преобразования Number(). Создается строка, которая представляет денежную сумму, отформатированную в соответствии с текущими свойствами данного объекта CurrencyFormatter, включая свойства locale, useCurrencySymbol, currencySymbol или currencyISOCode.

Свойство useCurrencySymbol определяет, будет ли метод формата использовать currencySymbol или currencyISOCode в отформатированной денежной сумме. Значением по умолчанию для useCurrencySymbol является false, поэтому денежные суммы будут по умолчанию форматироваться с помощью currencyISOCode

Во многих странах и регионах одинаковые символы валюты используются для обозначения разных денежных единиц. Например, в Соединенных Штатах, Австралии, Новой Зеландии, Канаде и Мексике используется один и тот же знак доллара ($) для обозначения местной валюты. Когда форматируемая валюта отличается от местной валюты пользователя, лучше использовать код ISO для обозначения валюты Чтобы проверить, соответствует ли код ISO валюты, которую необходимо отформатировать, коду ISO валюты по умолчанию для фактической локали, используемой средством форматирования, можно использовать метод formattingWithCurrencySymbolIsSafe().

Этот метод позволяет форматировать как очень большие, так и очень малые числа. Однако число знаков ограничивается пределами точности, установленными для типа данных Number.

Если возникла ошибка при форматировании вследствие указания недопустимого входного значения или других причин, метод format() по умолчанию возвращает null. Но если для свойства errorText указано ненулевое значение, то возвращается значение свойства errorText. Для свойства lastOperationStatus устанавливается значение, указывающее на возникновение ошибки.

В этом примере для стиля locale выбрано значение fr-CA [французский (Канада)]. Предполагается, что эта локаль поддерживается в операционной системе пользователя, и поэтому нет необходимости использовать резервную локаль. Для локали fr-CA канадский доллар является валютой по умолчанию, которой соответствует код ISO CAD. Поэтому при форматировании валюты со значениями по умолчанию в качестве символа денежной единицы используется CAD. Однако в случае, когда для свойства useCurrencySymbol установлено значение true, для форматирования денежной суммы используется свойство currencySymbol. <fx:Declarations> <s:CurrencyFormatter id="cf_use_ISOCode" locale="fr-CA" /> <s:CurrencyFormatter id="cf_use_Symbol" locale="fr-CA" useCurrencySymbol="true" /> </fx:Declarations> <s:VGroup> <!-- label will use ISO code: 1,234,567.89 CAD --> <s:Label text="{cf_use_ISOCode.format(1234567.89)}" /> <!-- label will use currency symbol: 1,234,567.89 $ --> <s:Label text="{cf_use_Symbol.format(1234567.89)}" /> </s:VGroup>

Во втором примере демонстрируется метод форматирования денежной суммы в канадских долларах с использованием пользовательской локали по умолчанию. Метод formattingWithCurrencySymbolIsSafe() используется для указания значения свойства useCurrencySymbol. Если пользовательской локалью по умолчанию является Канада (например, fr-CA или en-CA), будет использован символ валюты по умолчанию для Канады. Если установлена какая-либо локаль по умолчанию, значение currencyISOCode в CAD будет использоваться для форматирования денежной суммы.

<fx:Declarations> <s:CurrencyFormatter id="cf_CAD" locale="{LocaleID.DEFAULT}" currencyISOCode="CAD" useCurrencySymbol="{cf_CAD.formattingWithCurrencySymbolIsSafe('CAD')}" /> </fx:Declarations> <fx:Script> <![CDATA[ import flash.globalization.LocaleID; ]]> </fx:Script> <!-- label will use ISO code or currency symbol depending on user's default locale --> <s:Label text="{cf_CAD.format(1234567.89)}" />
currencySymbolcurrencyISOCodeformattingWithCurrencySymbolIsSafe()lastOperationStatususeCurrencySymbolspark.formatters.supportClasses.NumberFormatterBase.errorTextspark.globalization.LastOperationStatus
formattingWithCurrencySymbolIsSafe Определяет, может ли текущий заданный символ валюты использоваться при форматировании денежных сумм.если параметр requestedISOCode имеет значение null. TypeErrorTypeErrortrue, если currencyISOCode по умолчанию для локали, которая соответствует actualLocaleIDName, совпадает с параметром requestedISOCode; в противном случае false. requestedISOCodeТрехбуквенный код валюты ISO 4217 (например, USD для долларов США, EUR для евро). Должен содержать три прописных буквы от A до Z. Определяет, может ли текущий заданный символ валюты использоваться при форматировании денежных сумм.

Во многих регионах и странах используются одинаковые символы валюты. Этот метод помогает предотвратить использование неоднозначного символа валюты либо неожиданного символа или кода ISO валюты в результате использования резервной локали.

Этот метод часто используется для определения того, следует отображать символ местной валюты (если сумма форматируется с использованием пользовательской валюты по умолчанию) или более точный код ISO (если сумма форматируется в валюте, отличной от используемой по умолчанию).

Этот метод сравнивает параметр requestedISOCode с currencyISOCode по умолчанию для фактической локали и возвращает true, если строки совпадают, и false, если не совпадают. Когда строки совпадают, использование метода format() со свойством useCurrencySymbol, которому задано значение true, приводит к тому, что отформатированная строка с денежной суммой будет содержать символ валюты, используемый в текущей локали. Если этот метод возвращает значение false, то использование метода format() со свойством useCurrencySymbol, которому задано значение true, может привести к использованию неоднозначного или некорректного символа валюты.

actualLocaleIDNamecurrencySymbolcurrencyISOCodeuseCurrencySymbol
getAvailableLocaleIDNames Перечисляет все имена идентификаторов локалей, поддерживаемые этим классом.Вектор строк, содержащий все имена идентификаторов локалей, поддерживаемые этим классом и операционной системой. Перечисляет все имена идентификаторов локалей, поддерживаемые этим классом. В этом списке представлены локали, поддерживаемые операционной системой, но не локали, для которых присутствуют ресурсы в ResourceManager. parse Анализирует строку, возвращая денежную сумму и символ валюты.если параметр inputString имеет значение null. TypeErrorTypeErrorОбъект CurrencyParseResult, содержащий числовое значение и символ или строку валюты. inputStringСтрока ввода для анализа. Анализирует строку, возвращая денежную сумму и символ валюты.

Алгоритм анализа использует значение свойства decimalSeparator, чтобы определить целую и дробную часть числа. Он использует значения свойств negativeCurrencyFormat и positiveCurrencyFormat, чтобы определить местоположение символа или строки валюты относительно денежной суммы. Для отрицательных сумм свойство negativeCurrencyFormat определяет местоположение отрицательного символа и необходимость использования круглых скобок.

Если порядок символа валюты, символа «-» и числа в введенной строке не соответствует шаблону, определенному свойствами negativeCurrencyFormat и positiveCurrencyFormat, тогда:

  1. свойству value возвращенного объекта CurrencyParseResult задается значение NaN;
  2. свойству currencyString возвращенного объекта CurrencyParseResult задается значение null;
  3. Для свойства lastOperationStatus устанавливается значение LastOperationStatus.PARSE_ERROR, указывающее на ошибку анализа.

Строка ввода может содержать пробелы, которые игнорируются в ходе анализа.

Анализ может успешно выполняться, даже если не указан символ валюты. Часть строки, соответствующая символу валюты, не проверяется. Если ввод не содержит символа или строки валюты, в качестве значения свойства currencyString возвращенного объекта CurrencyParseResult задается пустая строка.

spark.formatters.supportClasses.NumberFormatterBase.decimalSeparatornegativeCurrencyFormatpositiveCurrencyFormatflash.globalization.CurrencyParseResult
actualLocaleIDName Имя фактического идентификатора локали, используемое этим объектом класса. Имя фактического идентификатора локали, используемое этим объектом класса. Эта локаль используется для доступа к форматированию данных и функциональным возможностям операционной системы.

Если локаль, установленная стилем locale, недоступна, то значение actualLocaleIDName будет отличаться от значения стиля locale. Значение будет указывать резервную используемую локаль. Если стиль локали установлен как LocaleID.DEFAULT, будет использоваться имя локали, определенное операционной системой пользователя.

flash.globalization.CurrencyFormatter.actualLocaleIDNameCurrencyFormatter()
currencyISOCode Трехбуквенный код валюты ISO 4217 для фактической используемой локали (например,если это свойство имеет нулевое значение. TypeErrorTypeError Трехбуквенный код валюты ISO 4217 для фактической используемой локали (например, USD, EUR, JPY, CNY).

Если для свойства useCurrencySymbol установлено значение false, этот код обозначает тип валюты при форматировании денежных сумм с помощью метода format().

Свойство инициализируется, когда стиль локали установлен на основе фактической используемой локали. В случае использования резервной локали это свойство отражает предпочитаемый код валюты или код валюты по умолчанию для резервной локали.

Значение по умолчанию зависит от используемой локали и операционной системы.

actualLocaleIDNameformat()currencySymbolformattingWithCurrencySymbolIsSafe()
currencySymbol Символ или строка валюты для фактически используемой локали.если это свойство имеет нулевое значение. TypeErrorTypeError Символ или строка валюты для фактически используемой локали.

Это свойство используется для определения символа валюты при форматировании денежных сумм с помощью метода format() с параметром withCurrencySymbol, которому задано значение true.

Свойство инициализируется, когда стиль локали установлен на основе фактической используемой локали. В случае использования резервной локали это свойство отражает предпочитаемый символ валюты или символ валюты по умолчанию для резервной локали, который может отличаться от стиля локали.

Значение по умолчанию зависит от используемой локали и операционной системы.

actualLocaleIDNameformat()formattingWithCurrencySymbolIsSafe()currencyISOCode
negativeCurrencyFormat Числовое значение, которое обозначает шаблон форматирования для отрицательных денежных сумм.если присвоенное значение не является числом в диапазоне от 0 до 15. ArgumentErrorArgumentError Числовое значение, которое обозначает шаблон форматирования для отрицательных денежных сумм. Этот шаблон определяет местоположение символа валюты и отрицательного символа или круглых скобок относительно числовой части денежной суммы.

В качестве значения этого свойства должна использоваться одна из констант, определенная в таблице ниже.

В приведенной ниже таблице перечислены возможные шаблоны форматирования для отрицательных денежных сумм. Когда денежная сумма форматируется с помощью метода format():

  • вместо символа «¤» подставляется значение свойства currencyISOCode или currencySymbol в зависимости от значения параметра withCurrencySymbol, переданного методу format();
  • вместо символа «-» подставляется значение свойства negativeNumberSymbol;
  • вместо символа «n» подставляется денежная сумма, переданная методу format().
Тип формата отрицательной денежной суммы Шаблон форматирования 0 (¤n) 1 -¤n 2 ¤-n 3 ¤n- 4 (n¤) 5 -n¤ 6 n-¤ 7 n¤- 8 -n ¤ 9 -¤ n 10 n ¤- 11 ¤ n- 12 ¤ -n 13 n- ¤ 14 (¤ n) 15 (n ¤)

Значение по умолчанию зависит от используемой локали и операционной системы.

format()currencySymbolnegativeSymbol
positiveCurrencyFormat Числовое значение, которое обозначает шаблон форматирования для положительных денежных сумм.если присвоенное значение не является числом в диапазоне от 0 до 3. ArgumentErrorArgumentError Числовое значение, которое обозначает шаблон форматирования для положительных денежных сумм. Этот формат определяет местоположение символа валюты относительно числовой части денежной суммы.

В качестве значения этого свойства должна использоваться одна из констант, определенная в таблице ниже.

В приведенной ниже таблице перечислены возможные шаблоны форматирования для положительных денежных сумм. Когда денежная сумма форматируется с помощью метода format():

  • вместо символа «¤» подставляется значение свойства currencyISOCode или currencySymbol в зависимости от значения параметра withCurrencySymbol, переданного методу format();
  • вместо символа «n» подставляется денежная сумма, переданная методу format().
Тип формата положительной денежной суммы Шаблон форматирования 0 ¤n 1 2 ¤ n 3 n ¤

Значение по умолчанию зависит от используемой локали и операционной системы.

currencySymbolformat()
useCurrencySymbol Позволяет использовать свойство currencySymbol для форматирования денежных сумм.false Позволяет использовать свойство currencySymbol для форматирования денежных сумм.

Если для свойства useCurrencySymbol установлено значение true, то значение свойства currencySymbol используется в строке, возвращаемой методом format. Например, ;123,456,789.22

Если для свойства useCurrencySymbol установлено значение false, то значение свойства currencyISOCode используется в строке, возвращаемой методом format. Например: USD 123,456,789.22

formattingWithCurrencySymbolIsSafe()format()
NumberFormatter Класс NumberFormatter обеспечивает форматирование и анализ числовых значений с учетом особенностей локали.The <s:NumberFormatter> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:

  <s:NumberFormatter 
    Properties
    negativeNumberFormat="locale and OS dependent"
  />
  
]]>
mx.formatters:IFormatterspark.formatters.supportClasses:NumberFormatterBase Класс NumberFormatter обеспечивает форматирование и анализ числовых значений с учетом особенностей локали. Он может форматировать объекты int, uint и Number.

Это класс-оболочка, включающий класс flash.globalization.NumberFormatter. Поэтому относящееся к конкретной локали форматирование обеспечивает flash.globalization.NumberFormatter. Класс NumberFormatter, который может применяться в объявлениях MXML, использует стиль локали для запрашиваемого имени идентификатора локали и содержит привязываемые методы и свойства.

Класс flash.globalization.NumberFormatter использует базовую операционную систему для форматирования функциональности и предоставления данных, относящихся к конкретной локали. В некоторых операционных системах, не поддерживающих классы flash.globalization, класс оболочки обеспечивает резервные функциональные возможности.

flash.globalization.NumberFormatterNumberFormatter Создает новый объект NumberFormatter для форматирования чисел в соответствии с правилами данной локали. Создает новый объект NumberFormatter для форматирования чисел в соответствии с правилами данной локали.

Стиль локали определяет локаль для этого класса. Стиль локали можно установить следующими способами:

  • С использованием класса в объявлении MXML и наследованием локали из документа, содержащего объявление. Пример:
          <fx:Declarations> 
                 <s:NumberFormatter id="nf" />
          </fx:Declarations>
  • С использованием объявления MXML и указанием значения локали в списке назначений. Пример:
          <fx:Declarations>
              <s:NumberFormatter id="nf_French_France" locale="fr_FR" />
          </fx:Declarations>
  • Вызов метода setStyle. Например:
          nf.setStyle("locale", "fr-FR")
  • Наследование стиля из UIComponent путем вызова метода addStyleClient() UIComponent.

Если стиль locale не установлен одним из вышеперечисленных способов, экземпляр этого класса добавляется как StyleClient в topLevelApplication и наследует стиль locale из объекта topLevelApplication при вызове получателя свойств, зависящего от locale, или метода, зависящего от locale.

Многие свойства этого класса автоматически устанавливаются на основе стиля локали. При изменении стиля локали все свойства, которые не были явно указаны, будут обновлены в соответствии с новой локалью. Обратите внимание, что фактическая используемая локаль определяется в свойстве actualLocaleIDName.

actualLocaleIDNamelastOperationsStatus
format Форматирует число.Отформатированная числовая строка. valueОбъект, содержащий числовое значение для форматирования. Если объект не является Number, то он будет преобразован в число с помощью функции преобразования Number(). Форматирует число.

Эта функция форматирует число, на основе значений свойств объекта NumberFormatter. Если свойства не меняются после установки стиля locale, числа форматируются в соответствии с условиями, предоставляемыми операционной системой для локали, указанной в свойстве actualLocaleIDName. Чтобы настроить формат, можно изменить свойства для определения специфических аспектов форматирования числа.

Эта функция позволяет форматировать очень большие и очень малые числа. Однако число знаков ограничивается пределами точности, установленными объектом Number. Экспоненциальное представление не поддерживается.

Если возникла ошибка при форматировании вследствие указания недопустимого входного значения или других причин, метод format() по умолчанию возвращает null. Но если для свойства errorText указано ненулевое значение, то возвращается значение свойства errorText. Для свойства lastOperationStatus будет установлено значение, указывающее на возникновение ошибки.

NumberFormatterspark.formatters.supportClasses.NumberFormatterBase.errorTextlastOperationStatus
getAvailableLocaleIDNames Перечисляет все имена идентификаторов локалей, поддерживаемые этим классом.Вектор строк, содержащий все имена идентификаторов локалей, поддерживаемые этим классом и операционной системой. Перечисляет все имена идентификаторов локалей, поддерживаемые этим классом. В этом списке представлены локали, поддерживаемые операционной системой, но не локали, для которых присутствуют ресурсы в ResourceManager. parseNumber Анализирует строку, которая содержит только цифры и/или пробелы, и возвращает число.если parseString имеет значение null TypeErrorTypeErrorОбъект Number, содержащий числовое значение. parseStringСтрока ввода для анализа. Анализирует строку, которая содержит только цифры и/или пробелы, и возвращает число. Если строка не начинается с числа или содержит символы, отличные от пробела, которые не входят в состав числа, этот метод возвращает значение NaN. Пробел до или после числовых знаков игнорируется.

Если до или после цифры числа стоит знак «плюс» (+), он рассматривается не как символ пробела. Возвращается значение NaN.

См. описание функции анализа для получения дополнительной информации об анализе чисел и признаках допустимого числа.

parse()flash.globalization.NationalDigitsType
parse Анализирует строку и возвращает объект NumberParseResult, содержащий проанализированные элементы.если параметр inputString имеет значение null. TypeErrorTypeErrorОбъект NumberParseResult, который содержит числовое значение и индексы начала и конца части строки, содержащей число. inputStringСтрока ввода для анализа. Анализирует строку и возвращает объект NumberParseResult, содержащий проанализированные элементы.

Объект NumberParseResult содержит значение первого числа, найденного в указанной строке, начальный индекс для числа в строке, а также индекс первого символа после числа в строке.

Если строка не содержит числа, свойству NumberParseResult задается значение NaN, а свойствам startIndex и endIndex задается шестнадцатеричное значение 0x7fffffff.

Эта функция использует значение свойства decimalSeparator, чтобы определить дробную часть числа, свойство groupingSeparator, чтобы определить, какие символы разрешено использовать в пределах цифр числа, и свойство negativeNumberFormat, чтобы управлять представлением отрицательных чисел.

В следующей таблице перечислены результаты строк, проанализированных для различных значений NegativeNumberFormat.

NegativeNumberFormat Входная строка Результат (n) «(123)» или «( 123 )» «-123» -n «-123» или «- 123» «-123» - n «-123» или «- 123» «-123» n- «123-» или «123 -» «-123» n - «123-» или «123 -» «-123»

Обратите внимание, что допускается использование одного пробела между числом и знаком «минус» или круглой скобкой. Разделитель — это символ, который имеет свойство разделителя-пробела (Zs) в базе данных символов Юникод. Для получения дополнительной информации см. http://www.unicode.org/ucd/).

При определении допустимого числа остальные свойства игнорируются. В частности, значение свойства digitsType игнорируется, и знаки могут находиться в любых наборах, перечисленных в классе NationalDigitsType. Значения свойств groupingPattern и useGrouping не влияют на анализ числа.

Если до или после числа в строке следует знак «+», он рассматривается как символ, не входящий в состав числа.

Эта функция не анализирует строки, содержащие числа в экспоненциальном представлении (например, 1,23e40).

Следующий код анализирует число из строки, извлекает префикс и суффикс. var nf:NumberFormatter = new NumberFormatter(); nf.setStyle("locale","fr-FR"); var str:String = "1,56 mètre" var result:NumberParseResult = nf.parse(str); trace(result.value) // 1.56 trace(str.substr(0,result.startIndex)); // "" trace(str.substr(result.startIndex, result.endIndex)); // "1,56" trace(str.substr(result.endIndex)); // " mètre"
flash.globalization.NumberParseResultparseNumber()flash.globalization.NationalDigitsType
actualLocaleIDName Имя фактического идентификатора локали, используемое этим объектом класса. Имя фактического идентификатора локали, используемое этим объектом класса. Эта локаль используется для доступа к форматированию данных и функциональным возможностям операционной системы.

Если локаль, установленная стилем locale, недоступна, то значение actualLocaleIDName будет отличаться от значения стиля locale. Значение будет указывать резервную используемую локаль. Если стиль локали установлен как LocaleID.DEFAULT, будет использоваться имя локали, определенное операционной системой пользователя.

flash.globalization.NumberFormatter.actualLocaleIDNameNumberFormatter()
negativeNumberFormat Числовое значение, которое обозначает шаблон форматирования для отрицательных чисел.если присвоенное значение не является числом в диапазоне от 0 до 4. ArgumentErrorArgumentError Числовое значение, которое обозначает шаблон форматирования для отрицательных чисел. Этот шаблон определяет местоположение отрицательного символа или круглых скобок относительно числовой части форматируемого числа.

В следующей таблице сведены все возможные форматы отрицательных чисел. При форматировании отрицательного числа знак «-» в шаблоне заменяется значением свойства negativeSymbol, а символ «n» заменяется отформатированным числовым значением.

Тип формата отрицательного числа Формат 0 (n) 1 -n 2 - n 3 n- 4 n -

Значение по умолчанию зависит от локали и операционной системы.

negativeSymbolformat()
DateTimeFormatter Класс DateTimeFormatter обеспечивает форматирование объекта Date на основе правил локали.The <s:DateTimeFormatter> tag inherits all of the tag attributes of its superclass and adds the following tag attributes:

  <s:DateTimeFormatter
    Properties
    dateStyle="long"
    dateTimePattern="EEEE, MMMM dd, yyyy h:mm:ss a"
    errorText="null"
    timeStyle="long"
    useUTC="false"
  />
  
]]>
mx.formatters:IFormatterspark.globalization.supportClasses:GlobalizationBase Класс DateTimeFormatter обеспечивает форматирование объекта Date на основе правил локали.

Это класс-оболочка, включающий класс flash.globalization.DateTimeFormatter. Поэтому функциональность форматирования, названия месяцев и дней, а также первый день недели определяет flash.globalization.DateTimeFormatter. Класс DateTimeFormatter, который может применяться в объявлениях MXML, использует стиль локали для запрашиваемого имени идентификатора локали и содержит привязываемые методы и свойства.

Класс flash.globalization.DateTimeFormatter использует базовую операционную систему для форматирования функциональности и предоставления данных, относящихся к конкретной локали. В некоторых операционных системах, не поддерживающих классы flash.globalization, класс оболочки обеспечивает резервные функциональные возможности.

flash.globalization.DateTimeFormatterDateTimeFormatter Создает новый объект DateTimeFormatter, чтобы отформатировать даты и время в соответствии с правилами указанной локали и заданных стилей форматирования даты и времени. Создает новый объект DateTimeFormatter, чтобы отформатировать даты и время в соответствии с условиями указанной локали и заданных стилей форматирования даты и времени.

Стиль локали определяет локаль для этого класса. Стиль локали можно установить следующими способами:

  • С использованием класса в объявлении MXML и наследованием локали из документа, содержащего объявление.
  • Пример:
          <fx:Declarations> 
                 <s:DateTimeFormatter id="df" />
          </fx:Declarations>
  • С использованием объявления MXML и указанием значения локали в списке назначений.
  • Пример:
          <fx:Declarations> 
              <s:DateTimeFormatter id="df_Japanese" locale="ja-JP" />
          </fx:Declarations>
  • Вызов метода setStyle. Например:
          df.setStyle("locale", "ja-JP")
  • Наследование стиля из UIComponent путем вызова метода addStyleClient() UIComponent.

Если стиль locale не установлен одним из вышеперечисленных способов, экземпляр этого класса добавляется как StyleClient в topLevelApplication и наследует стиль locale из объекта topLevelApplication при вызове получателя свойств, зависящего от locale, или метода, зависящего от locale.

Многие свойства этого класса автоматически устанавливаются на основе стиля локали. При изменении стиля локали все свойства, которые не были явно указаны, будут обновлены в соответствии с новой локалью. Обратите внимание, что фактическая используемая локаль определяется в свойстве actualLocaleIDName.

actualLocaleIDNamelastOperationsStatus
format Форматирует строку отображения для объекта, который указывает дату в локальном формате времени пользователя или в формате UTC.Отформатированная строка, представляющая значение даты или времени. valueЗначение Date, которое требуется отформатировать. Если объект не является Date, то он будет преобразован в дату с помощью конструктора Date(). Форматирует строку отображения для объекта, который указывает дату в локальном формате времени пользователя или в формате UTC.

Объект Date содержит два набора значений даты и времени: в формате времени пользователя (date, day, fullYear, hours, minutes, month и seconds) и в формате UTC (dateUTC, dayUTC, fullYearUTC, hoursUTC, minutesUTC, monthUTC и secondsUTC). Логическое свойство useUTC определяет набор компонентов даты и времени, который следует использовать при форматировании даты. Форматирование будет выполнено с использованием условий локали, установленных свойством стиля locale и свойствами dateStyle и timeStyle или dateTimePattern, указанными для этого экземпляра DateTimeFormatter.

Если возникла ошибка при форматировании вследствие указания недопустимого входного значения или других причин, метод format() по умолчанию возвратит null. Но если для свойства errorText указано ненулевое значение, то будет возвращено значение свойства errorText. Для свойства lastOperationStatus будет установлено значение, указывающее на возникновение ошибки.

dateStyletimeStyleDatedateTimePatternDateTimeFormatter
getAvailableLocaleIDNames Перечисляет все имена идентификаторов локалей, поддерживаемые этим классом.Вектор строк, содержащий все имена идентификаторов локалей, поддерживаемые этим классом и операционной системой. Перечисляет все имена идентификаторов локалей, поддерживаемые этим классом. В этом списке представлены локали, поддерживаемые операционной системой, но не локали, для которых присутствуют ресурсы в ResourceManager. getFirstWeekday Возвращает целое число, соответствующее первому дню недели для данной локали и календарной системы.Целое число, соответствующее первому дню недели для данной локали и календарной системы. Возвращает целое число, соответствующее первому дню недели для данной локали и календарной системы. 0 обозначает воскресенье, 1— понедельник и т. д. Последнее значение 6 соответствует субботе. getMonthNames Получает список локализованных строк, содержащий названия месяцев для текущей календарной системы.если nameStyle или context имеет нулевое значение. TypeErrorTypeErrorВектор локализованных строк, содержащий названия месяцев для текущей локали (указанной стилем локали), стиля имен и контекста. Первый элемент в векторе с индексом 0 содержит название первого месяца года, следующий элемент — название второго месяца и т. д. nameStylefullОбозначает стиль строки названия, который должен использоваться Допустимые значения:
  • DateTimeNameStyle.FULL
  • DateTimeNameStyle.LONG_ABBREVIATION
  • DateTimeNameStyle.SHORT_ABBREVIATION
contextstandaloneКод, обозначающий контекст, при котором должна использоваться отформатированная строка. Этот контекст имеет значение только для определенных локалей. Допустимые значения:
  • DateTimeNameContext.FORMAT
  • DateTimeNameContext.STANDALONE
Получает список локализованных строк, содержащий названия месяцев для текущей календарной системы. Первый элемент списка содержит название первого месяца в году.
flash.globalization.DateTimeNameContextflash.globalization.DateTimeNameStyle
getWeekdayNames Получает список локализованных строк, содержащий названия дней недели для текущей календарной системы.если nameStyle или context имеет нулевое значение. TypeErrorTypeErrorВектор локализованных строк, содержащий названия месяцев для текущей локали (указанной стилем локали), стиля имен и контекста. Первый элемент вектора с индексом 0 содержит название для воскресенья, следующий — для понедельника и т. д. nameStylefullОбозначает стиль строки названия, который должен использоваться Допустимые значения:
  • DateTimeNameStyle.FULL
  • DateTimeNameStyle.LONG_ABBREVIATION
  • DateTimeNameStyle.SHORT_ABBREVIATION
contextstandaloneКод, обозначающий контекст, при котором должна использоваться отформатированная строка. Этот контекст применяется только для определенных локалей, в которых названия месяцев изменяются в зависимости от контекста. Например, в греческом языке используются разные названия месяцев в зависимости от того, используются они отдельно или вместе с датой. Допустимые значения:
  • DateTimeNameContext.FORMAT
  • DateTimeNameContext.STANDALONE
Получает список локализованных строк, содержащий названия дней недели для текущей календарной системы. Первый элемент списка представляет название для воскресенья.
flash.globalization.DateTimeNameContextflash.globalization.DateTimeNameStyle
actualLocaleIDName Имя фактического идентификатора локали, используемое этим объектом класса. Имя фактического идентификатора локали, используемое этим объектом класса. Эта локаль используется для доступа к форматированию данных и функциональным возможностям операционной системы.

Если локаль, установленная стилем locale, недоступна, то значение actualLocaleIDName будет отличаться от значения стиля locale. Значение будет указывать резервную используемую локаль. Если стиль локали установлен как LocaleID.DEFAULT, будет использоваться имя локали, определенное операционной системой пользователя.

flash.globalization.DateTimeFormatter.actualLocaleIDNameDateTimeFormatter()
dateStyle Стиль даты для данного экземпляра DateTimeFormatter.если присвоенное значение не является допустимой константой DateTimeStyle или является DateTimeStyle.CUSTOM. ArgumentErrorArgumentErrorесли для dateStyle установлено значение null. TypeErrorTypeError<code>DateTimeStyle.LONG</code> Стиль даты для данного экземпляра DateTimeFormatter. Стиль даты служит для получения шаблона форматирования времени и локали, предварительно определенного в операционной системе. При форматировании даты стиль locale и свойства timeStyle и dateStyle определяют формат даты. Значение стиля даты можно установить с помощью присвоения значения свойству dateStyle или свойству dateTimePattern.

Возможные значения данного свойства определены в классе flash.globalization.DateTimeStyle. Допустимые значения для свойства dateStyle:

  • DateTimeStyle.LONG
  • DateTimeStyle.MEDIUM
  • DateTimeStyle.SHORT
  • DateTimeStyle.NONE
  • DateTimeStyle.CUSTOM

Если для свойства dateTimePattern указано значение, дополнительным эффектом этого является то, что для свойства dateStyle устанавливается значение DateTimeStyle.CUSTOM.

dateStyledateTimePatternlastOperationStatusflash.globalization.DateTimeStyleDateTimeFormatter()
dateTimePattern Строка образца, используемая объектом DateTimeFormatter для форматирования дат и времени."EEEE, MMMM dd, yyyy h:mm:ss a" Строка образца, используемая объектом DateTimeFormatter для форматирования дат и времени.

Этот шаблон можно установить одним из двух способов:

  1. При установке свойств dateStyle и timeStyle.
  2. При установке свойства dateTimePattern.

Если значение присваивается свойству непосредственно, то дополнительным эффектом этого будет переопределение текущего стиля времени и даты, для которых устанавливается значение DateTimeStyle.CUSTOM.

Дополнительные сведения о синтаксисе шаблона см. в описании метода flash.globalization.DateTimeFormatter.setDateTimePattern().

dateStyletimeStyle
errorText Строка, возвращенная методом format() при возникновении ошибки.null Строка, возвращенная методом format() при возникновении ошибки.

Если errorText не является null и ошибка возникает при форматировании даты, метод формата возвратит строку, присвоенную этому свойству.

Например: var dtf:DateTimeFormatter = new DateTimeFormatter(); dtf.setStyle("locale", "en-US"); dtf.errorText = "----" trace(dtf.format("abc")); // ----
spark.globalization.LastOperationStatus
lastOperationStatus Состояние самой последней операции, выполненной этим объектом класса. Состояние самой последней операции, выполненной этим объектом класса. Свойство lastOperationStatus задается каждый раз при вызове конструктора или метода этого класса или при задании значения для другого свойства. Другие возможные значения см. в описании соответствующего метода. timeStyle Стиль времени для данного экземпляра DateTimeFormatter.если присвоенное значение не является допустимой константой DateTimeStyle или является DateTimeStyle.CUSTOM. ArgumentErrorArgumentErrorесли параметр dateStyle или timeStyle имеет нулевое значение. TypeErrorTypeError<code>DateTimeStyle.LONG</code> Стиль времени для данного экземпляра DateTimeFormatter. Стиль времени служит для получения шаблона форматирования времени и локали, предварительно определенного в операционной системе. При форматировании даты стиль locale и свойства timeStyle и dateStyle определяют формат даты. Значение стиля времени можно установить с помощью присвоения значения свойству timeStyle или свойству dateTimePattern.

Значения данного свойства определены в классе flash.globalization.DateTimeStyle. Допустимые значения для свойства timeStyle:

  • DateTimeStyle.LONG
  • DateTimeStyle.MEDIUM
  • DateTimeStyle.SHORT
  • DateTimeStyle.NONE
  • DateTimeStyle.CUSTOM

Если для свойства dateTimePattern указано значение, дополнительным эффектом этого является то, что для свойства dateStyle устанавливается значение DateTimeStyle.CUSTOM .

dateStyledateTimePatternflash.globalization.DateTimeStyleDateTimeFormatter()
useUTC Логический флаг, определяющий использование значений даты и времени в локальном формате или в формате UTC при форматировании даты.false Логический флаг, определяющий использование значений даты и времени в локальном формате или в формате UTC при форматировании даты. Если для useUTC установлено значение true, то используются значения UTC. Если установлено значениеfalse, то используются значения даты и времени, выбранные в текущем часовом поясе операционной системы. format()