Пакет | flash.globalization |
Класс | public final class CurrencyFormatter |
Наследование | CurrencyFormatter Object |
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Класс CurrencyFormatter использует данные и функции, предоставляемые операционной системой и форматирует денежные значения в соответствии с правилами для определенной локали и типа валюты. Позиция символа валюты, отрицательного символа, десятичного разделителя, разделителя группировки, десятичного разделителя шаблона группировки и других элементов может варьироваться в зависимости от локали.
Если операционная система поддерживает запрашиваемую локаль, свойства и тип валюты задаются в соответствии с правилами и значениями по умолчанию запрашиваемой локали. Если запрашиваемая локаль недоступна, то свойства задаются в соответствии с резервной или стандартной локалью, которую можно получить с помощью свойства actualLocaleIDName
.
В результате использования пользовательских настроек, системных шаблонов форматирования и резервной локали (когда запрашиваемая локаль не поддерживается) пользователи могут наблюдать разные результаты форматирования даже при использовании одного и того же идентификатора локали.
Свойство | Определено | ||
---|---|---|---|
actualLocaleIDName : String [только для чтения]
Имя фактического идентификатора локали, используемого этим объектом CurrencyFormatter. | CurrencyFormatter | ||
constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | ||
currencyISOCode : String [только для чтения]
Трехбуквенный код ISO 4217 для фактически использованной локали. | CurrencyFormatter | ||
currencySymbol : String [только для чтения]
Символ или строка валюты для фактически используемой локали. | CurrencyFormatter | ||
decimalSeparator : String
Символ-разделитель десятичной дроби, используемый для форматирования или анализа денежных сумм с дробной частью. | CurrencyFormatter | ||
digitsType : uint
Определяет набор цифровых символов, используемых при форматировании денежных сумм. | CurrencyFormatter | ||
fractionalDigits : int
Максимальное число цифр, которые могут отображаться после десятичного разделителя. | CurrencyFormatter | ||
groupingPattern : String
Описывает размещение разделителей группировки в пределах отформатированной строки денежной суммы. | CurrencyFormatter | ||
groupingSeparator : String
Символ или строка, используемые в качестве разделителя группировки. | CurrencyFormatter | ||
lastOperationStatus : String [только для чтения]
Состояние самой последней операции, выполненной этим объектом CurrencyFormatter. | CurrencyFormatter | ||
leadingZero : Boolean
Определяет, включается ли начальный нуль в отформатированную денежную сумму, если слева от десятичного разделителя нет целых чисел. | CurrencyFormatter | ||
negativeCurrencyFormat : uint
Числовое значение, которое обозначает шаблон форматирования для отрицательных денежных сумм. | CurrencyFormatter | ||
negativeSymbol : String
Отрицательный символ, используемый при форматировании отрицательных денежных сумм. | CurrencyFormatter | ||
positiveCurrencyFormat : uint
Числовое значение, которое обозначает шаблон форматирования для положительных денежных сумм. | CurrencyFormatter | ||
requestedLocaleIDName : String [только для чтения]
Имя запрашиваемого идентификатора локали, переданного конструктору этого объекта CurrencyFormatter. | CurrencyFormatter | ||
trailingZeros : Boolean
Определяет, добавляются ли нули в конце форматируемой денежной суммы. | CurrencyFormatter | ||
useGrouping : Boolean
Позволяет использовать разделитель группировки при форматировании денежных сумм. | CurrencyFormatter |
Метод | Определено | ||
---|---|---|---|
CurrencyFormatter(requestedLocaleIDName:String)
Создает новый объект CurrencyFormatter, чтобы отформатировать числа, представляющие денежные суммы в соответствии с правилами данной локали. | CurrencyFormatter | ||
Создается строка, которая представляет денежную сумму, отформатированную в соответствии с текущими свойствами данного объекта CurrencyFormatter, включая локаль, символ валюты и код валюты ISO. | CurrencyFormatter | ||
Определяет, может ли текущий заданный символ валюты использоваться при форматировании денежных сумм. | CurrencyFormatter | ||
[статические]
Перечисляет все имена идентификаторов локалей, поддерживаемые этим классом. | CurrencyFormatter | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
Анализирует строку, возвращая денежную сумму и символ валюты. | CurrencyFormatter | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Задает свойства currencyISOCode и currencySymbol объекта CurrencyFormatter. | CurrencyFormatter | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
Возвращает строковое представление заданного объекта. | Object | ||
Возвращает элементарное значение заданного объекта. | Object |
actualLocaleIDName | свойство |
actualLocaleIDName:String
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Имя фактического идентификатора локали, используемого этим объектом CurrencyFormatter.
В зависимости от операционной системы и значения параметра requestedLocaleIDName
, передаваемого конструктору CurrencyFormatter()
, имя может иметь одно из трех значений.
- Если запрашиваемая локаль не является
LocaleID.DEFAULT
и поддерживается операционной системой, тогда возвращаемое имя совпадает со значением свойстваrequestedLocaleIDName
. - Если константа
LocaleID.DEFAULT
использована в качестве значения параметраrequestedLocaleIDName
конструктора, то используется имя текущей локали, заданной в операционной системе пользователя. ЗначениеLocaleID.DEFAULT
сохраняет настройку ОС, заданную пользователем. Передача явного значения в качестве параметраrequestedLocaleIDName
не обязательно дает тот же результат, что использованиеLocaleID.DEFAULT
, даже если при этом используются одинаковые имена идентификатора локали. Пользователь мог задать в своей системе пользовательские настройки локали, и запрос явного имени идентификатора локали вместо использования константыLocaleID.DEFAULT
в программе не позволит извлечь эти пользовательские настройки. - Если система не поддерживает имя
requestedLocaleIDName
, определенное в конструкторе, то используется резервное имя идентификатора локали.
Реализация
public function get actualLocaleIDName():String
Связанные элементы API
currencyISOCode | свойство |
currencyISOCode:String
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Трехбуквенный код ISO 4217 для фактически использованной локали.
Этот код используется для определения символа ли строки валюты при форматировании денежных сумм с помощью метода format()
с параметром withCurrencySymbol
, которому задано значение false
.
Это свойство инициализируется конструктором, исходя из фактически используемой локали. В случае использования резервной локали это свойство отражает предпочитаемый код валюты по умолчанию для резервной локали.
Значением по умолчанию является dependent on the actual locale and operating system.
Реализация
public function get currencyISOCode():String
Связанные элементы API
currencySymbol | свойство |
currencySymbol:String
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Символ или строка валюты для фактически используемой локали.
Это свойство используется для определения символа валюты при форматировании денежных сумм с помощью метода format()
с параметром withCurrencySymbol
, которому задано значение true
.
Это свойство инициализируется конструктором, исходя из фактически используемой локали. В случае использования резервной локали это свойство отражает предпочитаемый символ валюты по умолчанию для резервной локали.
Значением по умолчанию является dependent on the actual locale and operating system.
Реализация
public function get currencySymbol():String
Связанные элементы API
decimalSeparator | свойство |
decimalSeparator:String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Символ-разделитель десятичной дроби, используемый для форматирования или анализа денежных сумм с дробной частью.
Это свойство изначально задается на основе локали, выбранной при создании объекта NumberFormatter.
Когда этому свойству задано значение и отсутствуют ошибки или предупреждения, свойству lastOperationStatus
задается значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Значением по умолчанию является dependent on the actual locale and operating system.
Реализация
public function get decimalSeparator():String
public function set decimalSeparator(value:String):void
Выдает
TypeError — если это свойство имеет нулевое значение.
|
Связанные элементы API
digitsType | свойство |
digitsType:uint
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Определяет набор цифровых символов, используемых при форматировании денежных сумм.
В различных языках и регионах используются разные символы для представления цифр 0—9. Это свойство определяет используемый набор цифр.
Значение этого свойства представляет значение Юникод для обозначения нуля в десятичном наборе цифр. Действительные значения для этого свойства определены в классе NationalDigitsType.
Когда этому свойству задано значение и отсутствуют ошибки или предупреждения, свойству lastOperationStatus
задается значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Значением по умолчанию является dependent on the actual locale and operating system.
Реализация
public function get digitsType():uint
public function set digitsType(value:uint):void
Выдает
TypeError — если это свойство имеет нулевое значение.
|
Связанные элементы API
fractionalDigits | свойство |
fractionalDigits:int
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Максимальное число цифр, которые могут отображаться после десятичного разделителя.
Числа округляются до указанного в этом свойстве количества знаков. Схема округления варьируется в зависимости от операционной системы пользователя.
Когда свойство trailingZeros
имеет значение true
, дробная часть числа (после запятой) дополняется нулями, чтобы ее длина соответствовала значению данного свойства fractionalDigits
.
Когда этому свойству задано значение и отсутствуют ошибки или предупреждения, свойству lastOperationStatus
задается значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Значением по умолчанию является 0.
Реализация
public function get fractionalDigits():int
public function set fractionalDigits(value:int):void
Связанные элементы API
groupingPattern | свойство |
groupingPattern:String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Описывает размещение разделителей группировки в пределах отформатированной строки денежной суммы.
Когда свойство useGrouping
имеет значение true, свойство groupingPattern
используется для определения местоположения разделителя группировки и используемого шаблона.
Шаблон группировки определяется как строка, содержащая числа, разделенные точкой с запятой и в некоторых случаях может оканчиваться звездочкой. Например: "3;2;*"
. Каждое число в строке представляет собой количество цифр в группе. Разделитель группировки помещается перед каждой группой цифр. Звездочка в конце строки обозначает, что группы с этим числом цифр должны повторяться до конца отформатированной строки. Если звездочки нет, то в оставшейся части отформатированной строки нет дополнительных групп или символов.
Первое число в строке соответствует первой группе цифр слева от десятичного разделителя. Последующие числа определяют количество цифр в следующих группах слева. Таким образом строка «3;2;*» обозначает, что разделитель группировки ставится после первой группы из 3 цифр, за которой следует группы из 2 цифр. Например: 98,76,54,321
В следующей таблице приводятся примеры форматирования денежной суммы 123456789,12 с различными шаблонами группировки. В качестве символа группировки используется запятая, десятичный разделитель — точка, символ валюты — знак доллара ($).
Шаблон группировки | Образец формата |
3;* | $123,456,789.12 |
3;2;* | $12,34,56,789.12 |
3 | $123456,789.12 |
Можно определить лишь ограниченное число размеров группировки. В одних операционных системах шаблоны группировки могут содержать только два числа и звездочку. Другие операционные системы могут поддерживать до четырех чисел и звездочку. Когда речь идет о шаблонах без звездочки, одни операционные системы поддерживают только одно число, а другие до трех чисел. Если превышено максимальное число элементов группировки, то лишние элементы игнорируются, в свойству lastOperationStatus
задается значение, как описано ниже.
Когда этому свойству задано значение и отсутствуют ошибки или предупреждения, свойству lastOperationStatus
задается значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Реализация
public function get groupingPattern():String
public function set groupingPattern(value:String):void
Выдает
TypeError — если это свойство имеет нулевое значение.
|
Связанные элементы API
groupingSeparator | свойство |
groupingSeparator:String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Символ или строка, используемые в качестве разделителя группировки.
Значение этого свойства используется в качестве разделителя группировки при форматировании денежных сумм, когда свойство useGrouping
имеет значение true
. Это свойство изначально задается на основе локали, выбранной при создании объекта NumberFormatter.
Когда этому свойству задано значение и отсутствуют ошибки или предупреждения, свойству lastOperationStatus
задается значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Значением по умолчанию является dependent on the actual locale and operating system.
Реализация
public function get groupingSeparator():String
public function set groupingSeparator(value:String):void
Выдает
TypeError — если это свойство имеет нулевое значение.
|
Связанные элементы API
lastOperationStatus | свойство |
lastOperationStatus:String
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Состояние самой последней операции, выполненной этим объектом CurrencyFormatter. Свойство lastOperationStatus
задается каждый раз при вызове конструктора или метода этого класса или при задании значения для другого свойства. Другие возможные значения см. в описании соответствующего метода.
Реализация
public function get lastOperationStatus():String
Связанные элементы API
leadingZero | свойство |
leadingZero:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Определяет, включается ли начальный нуль в отформатированную денежную сумму, если слева от десятичного разделителя нет целых чисел.
Когда это свойство имеет значение true
начальный нуль добавляется слева от десятичного разделителя при форматировании числовых значений в диапазоне от -1.0 до 1.0. Когда это свойство имеет значение false
, начальный нуль не добавляется.
Например, если форматируется денежная сумма 0,321 и это свойство имеет значение true
, тогда в отформатированную строку включается начальный нуль. Если свойство имеет значение false
, то начальный нуль не включается. В этом случае строка будет содержать только десятичный разделитель и дробную часть: $.321
.
В следующей таблице приводятся примеры форматирования денежных сумм на основе значений этого свойства, а также связанных свойств fractionalDigits
и trailingZeros
.
trailingZeros | leadingZero | fractionalDigits | 0.12 | 0 |
true | true | 3 | $0.120 | $0.000 |
false | true | 3 | $0.12 | $0 |
true | false | 3 | $.120 | $.000 |
false | false | 3 | $.12 | $0 |
Когда этому свойству задано значение и отсутствуют ошибки или предупреждения, свойству lastOperationStatus
задается значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Значением по умолчанию является dependent on the actual locale and operating system.
Реализация
public function get leadingZero():Boolean
public function set leadingZero(value:Boolean):void
Выдает
TypeError — если это свойство имеет нулевое значение.
|
Связанные элементы API
negativeCurrencyFormat | свойство |
negativeCurrencyFormat:uint
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Числовое значение, которое обозначает шаблон форматирования для отрицательных денежных сумм. Этот шаблон определяет местоположение символа валюты и отрицательного символа или круглых скобок относительно числовой части денежной суммы.
В качестве значения этого свойства должна использоваться одна из констант, определенная в таблице ниже.
В приведенной ниже таблице перечислены возможные шаблоны форматирования для отрицательных денежных сумм. Когда денежная сумма форматируется с помощью метода 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 ¤) |
Когда этому свойству задано значение и отсутствуют ошибки или предупреждения, свойству lastOperationStatus
задается значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Значением по умолчанию является dependent on the actual locale and operating system.
Реализация
public function get negativeCurrencyFormat():uint
public function set negativeCurrencyFormat(value:uint):void
Выдает
ArgumentError — если присвоенное значение не является числом в диапазоне от 0 до 15.
|
Связанные элементы API
negativeSymbol | свойство |
negativeSymbol:String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Отрицательный символ, используемый при форматировании отрицательных денежных сумм.
Этот символ используется вместе с форматом отрицательных денежных сумм при форматировании сумм, которые меньше нуля. Он не используется в форматах отрицательных денежных сумм, которые не включают отрицательный символ (например, когда отрицательные суммы заключены в круглые скобки).
Когда этому свойству задано значение и отсутствуют ошибки или предупреждения, свойству lastOperationStatus
задается значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Значением по умолчанию является dependent on the actual locale and operating system.
Реализация
public function get negativeSymbol():String
public function set negativeSymbol(value:String):void
Выдает
TypeError — если это свойство имеет нулевое значение.
|
Связанные элементы API
positiveCurrencyFormat | свойство |
positiveCurrencyFormat:uint
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Числовое значение, которое обозначает шаблон форматирования для положительных денежных сумм. Этот формат определяет местоположение символа валюты относительно числовой части денежной суммы.
В качестве значения этого свойства должна использоваться одна из констант, определенная в таблице ниже.
В приведенной ниже таблице перечислены возможные шаблоны форматирования для положительных денежных сумм. Когда денежная сумма форматируется с помощью метода format()
:
- вместо символа «¤» подставляется значение свойства
currencyISOCode
илиcurrencySymbol
в зависимости от значения параметраwithCurrencySymbol
, переданного методуformat()
; - вместо символа «n» подставляется денежная сумма, переданная методу
format()
.
Тип формата положительной денежной суммы | Шаблон форматирования |
0 | ¤n |
1 | n¤ |
2 | ¤ n |
3 | n ¤ |
Когда этому свойству задано значение и отсутствуют ошибки или предупреждения, свойству lastOperationStatus
задается значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Значением по умолчанию является dependent on the actual locale and operating system.
Реализация
public function get positiveCurrencyFormat():uint
public function set positiveCurrencyFormat(value:uint):void
Выдает
ArgumentError — если присвоенное значение не является числом в диапазоне от 0 до 3.
|
Связанные элементы API
requestedLocaleIDName | свойство |
requestedLocaleIDName:String
[только для чтения] Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Имя запрашиваемого идентификатора локали, переданного конструктору этого объекта CurrencyFormatter.
Если использовано значение LocaleID.DEFAULT
, возвращается имя i-default. Локаль, использованная на самом деле, может отличаться от запрашиваемой, когда применяется резервная локаль. Имя фактической локали можно получить с помощью свойства actualLocaleIDName
.
Реализация
public function get requestedLocaleIDName():String
Связанные элементы API
trailingZeros | свойство |
trailingZeros:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Определяет, добавляются ли нули в конце форматируемой денежной суммы.
Когда это свойство имеет значение true
, в конце дробной части отформатированного числа добавляются нули, чтобы его длина соответствовала ограничению, определенному в свойстве fractionalDigits
. Когда это свойство имеет значение false
, нули в конце числа не отображаются.
Например, если форматируется денежная сумма 123,4, это свойство имеет значение true, а свойству fractionalDigits
задано значение 3, в конце отформатированной строки будут отображаться нули: $123,400
. Если же это свойство имеет значение false
, нули в конце строки не добавляются, и после десятичного разделителя отображаются только ненулевые цифры: $123,4
.
В следующей таблице приводятся примеры форматирования денежных сумм на основе значений этого свойства, а также связанных свойств fractionalDigits
и leadingZero
.
trailingZeros | leadingZero | fractionalDigits | 0.12 | 0 |
true | true | 3 | $0.120 | $0.000 |
false | true | 3 | $0.12 | $0 |
true | false | 3 | $.120 | $.000 |
false | false | 3 | $.12 | $0 |
Когда этому свойству задано значение и отсутствуют ошибки или предупреждения, свойству lastOperationStatus
задается значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Значением по умолчанию является dependent on the actual locale and operating system.
Реализация
public function get trailingZeros():Boolean
public function set trailingZeros(value:Boolean):void
Выдает
TypeError — если это свойство имеет нулевое значение.
|
Связанные элементы API
useGrouping | свойство |
useGrouping:Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Позволяет использовать разделитель группировки при форматировании денежных сумм.
Когда свойство useGrouping
имеет значение true
, цифры группируются и разделяются с использованием символа-разделителя группировки. Например, $123,456,789
Когда свойство useGrouping
имеет значение false
, цифры не группируются и не разделяются. Например, ;123456789
Свойство groupingSeparator
определяет символ, который должен использоваться в качестве разделителя группировки. Свойство groupingPattern
определяет количество цифр между разделителями группировки.
Когда этому свойству задано значение и отсутствуют ошибки или предупреждения, свойству lastOperationStatus
задается значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Реализация
public function get useGrouping():Boolean
public function set useGrouping(value:Boolean):void
Связанные элементы API
CurrencyFormatter | () | Конструктор |
public function CurrencyFormatter(requestedLocaleIDName:String)
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Создает новый объект CurrencyFormatter, чтобы отформатировать числа, представляющие денежные суммы в соответствии с правилами данной локали.
Этот конструктор определяет, поддерживает ли текущая операционная система запрашиваемое имя идентификатора локали. Если она не поддерживается, будет использована резервная локаль. Если использована резервная локаль, свойство lastOperationStatus
указывает тип резервного значения, а свойство actualLocaleIDName
содержит имя резервного идентификатора локали.
Значения определенных свойств, такие как currencySymbol
и currencyISOCode
, задаются автоматически, исходя из локали.
ПРИМЕЧАНИЕ. Когда используется резервная локаль, для свойств валюты задаются значения по умолчанию, в результате чего свойство currencySymbol
или currencyISOCode
может получить неожиданное значение. Рекомендуется проверить значения свойств currencySymbol
и currencyISOCode
, прежде чем форматировать денежную сумму.
Чтобы задать форматирование в соответствии с текущими пользовательскими настройками операционной системы, необходимо передать значение LocaleID.DEFAULT
в параметре requestedLocaleIDName
конструктора.
Когда конструктор вызывается и успешно создает объект, свойство lastOperationStatus
получает значение:
LastOperationStatus.NO_ERROR
Когда запрашиваемое имя идентификатора языкового стандарта недоступно, lastOperationStatus
получает одно из следующих значений:
LastOperationStatus.USING_FALLBACK_WARNING
LastOperationStatus.USING_DEFAULT_WARNING
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus.
Дополнительные сведения о перечисленных выше предупреждениях и других возможных значениях свойства lastOperationStatus
см. в описании класса LastOperationStatus
.
requestedLocaleIDName:String — Предпочитаемое имя идентификатора локали для использования при определении формата даты или времени.
|
Выдает
TypeError — если параметр requestedLocaleIDName имеет значение null .
|
Связанные элементы API
format | () | метод |
public function format(value:Number, withCurrencySymbol:Boolean = false):String
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Создается строка, которая представляет денежную сумму, отформатированную в соответствии с текущими свойствами данного объекта CurrencyFormatter, включая локаль, символ валюты и код валюты ISO.
По умолчанию этот метод использует свойство currencyISOCode
для определения символ и другие настройки валюты, используемые при форматировании.
Во многих странах и регионах одинаковые символы валюты используются для обозначения разных денежных единиц. Например, в Соединенных Штатах, Австралии, Новой Зеландии, Канаде и Мексике используется один и тот же знак доллара ($) для обозначения местной валюты. Когда форматируемая валюта отличается от местной валюты пользователя, лучше использовать код ISO для обозначения валюты Можно вызвать метод formattingWithCurrencySymbolIsSafe()
, чтобы проверить совпадает ли код ISO форматируемой валюты со свойством currencyISOCode
объекта CurrencyFormatter.
Этот метод позволяет форматировать как очень большие, так и очень малые числа. Однако число знаков ограничивается пределами точности, установленными для типа данных объекта Number.
Параметры
value:Number — Числовое значение, которое требуется отформатировать в строку валюты.
| |
withCurrencySymbol:Boolean (default = false ) — Когда установлено значение false, свойство currencyISOCode определяет, какая строка или символ валюты используется в строке вывода. Когда установлено значение true, в строке вывода используется текущее значение свойства currencySymbol .
|
String — Строка, содержащая отформатированное значение валюты.
|
Связанные элементы API
currencyISOCode
formattingWithCurrencySymbolIsSafe()
lastOperationStatus
LastOperationStatus
Пример ( Использование этого примера )
withCurrencySymbol
имеет значение true, для форматирования денежной суммы используется свойство currencySymbol
.
var cf:CurrencyFormatter = new CurrencyFormatter("fr-CA"); trace(cf.actualLocaleIDName); // "fr-CA" trace(cf.currencyISOCode); // "CAD" trace(cf.currencySymbol); // "$" trace(cf.format(1254.56)); // "1 254,56 CAD" trace(cf.format(1254.56, true)); // "1 254,56 $"
Во втором примере демонстрируется метод форматирования денежной суммы в канадских долларах с использованием пользовательской локали по умолчанию. Чтобы проверить, является ли канадский доллар пользовательской валютой по умолчанию, используется метод formattingWithCurrencySymbolIsSafe()
. В случае положительного результата методу форматирования передается параметр withCurrencySymbol
со значением true. В противном случае в качестве валюты задается канадский доллар, и используется более описательный символ денежной единицы. В примере демонстрируется форматирование валюты, если в качестве локали по умолчанию используется французская (Канада) или английская (США).
var cf:CurrencyFormatter = new CurrencyFormatter(LocaleID.DEFAULT); if (cf.formattingWithCurrencySymbolIsSafe("CAD")) { trace(cf.actualLocaleIDName); // "fr-CA French (Canada)" trace(cf.format(1254.56, false)); // "1 254,56 $" } else { trace(cf.actualLocaleIDName); // "en-US English (USA)" cf.setCurrency("CAD", "C$") trace(cf.format(1254.56, true)); // "C$ 1,254.56" }
formattingWithCurrencySymbolIsSafe | () | метод |
public function formattingWithCurrencySymbolIsSafe(requestedISOCode:String):Boolean
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Определяет, может ли текущий заданный символ валюты использоваться при форматировании денежных сумм.
Во многих регионах и странах используются одинаковые символы валюты. Этот метод помогает предотвратить использование неоднозначного символа валюты либо неожиданного символа или кода ISO валюты в результате использования резервной локали.
Этот метод часто используется для определения того, следует отображать символ местной валюты (если сумма форматируется с использованием пользовательской валюты по умолчанию) или более точный код ISO (если сумма форматируется в валюте, отличной от используемой по умолчанию).
Этот метод сравнивает параметр requestedISOCode
с текущим значением свойства currencyISOCode
и возвращает true
, если строки совпадают, и false
, если не совпадают. Когда строки совпадают, использование метода format()
с параметром withCurrencySymbol
, которому задано значение true
, приводит к тому, что отформатированная строка с денежной суммой будет содержать уникальный символ валюты для данной локали. Если этот метод возвращает значение false, то использование метода format()
с параметром withCurrencySymbol
, которому задано значение true, может привести к использованию неоднозначного или некорректного символа валюты.
Когда этот метод вызывается и успешно выполняется, свойство lastOperationStatus
получает значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Параметры
requestedISOCode:String — Трехбуквенный код валюты ISO 4217 (например, USD для долларов США, EUR для евро). Должен содержать три прописных буквы от A до Z.
|
Boolean — имеет значение true , если свойство currencyISOCode соответствует параметру requestedISOCode ; в противном случае имеет значение false .
|
Выдает
TypeError — если параметр requestedISOCode имеет значение null.
|
Связанные элементы API
getAvailableLocaleIDNames | () | метод |
public static function getAvailableLocaleIDNames():Vector.<String>
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Перечисляет все имена идентификаторов локалей, поддерживаемые этим классом.
Если этот класс не поддерживается текущей операционной системой, данный метод возвращает нулевое значение.
Когда этот метод вызывается и успешно выполняется, свойство lastOperationStatus
получает значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Vector.<String> — Вектор строк, содержащих все имена идентификаторов локалей, поддерживаемые этим классом.
|
parse | () | метод |
public function parse(inputString:String):CurrencyParseResult
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Анализирует строку, возвращая денежную сумму и символ валюты.
Алгоритм анализа использует значение свойства decimalSeparator
, чтобы определить целую и дробную часть числа. Он использует значения свойств negativeCurrencyFormat
и positiveCurrencyFormat
, чтобы определить местоположение символа или строки валюты относительно денежной суммы. Для отрицательных сумм свойство negativeCurrencyFormat
определяет местоположение отрицательного символа и необходимость использования круглых скобок.
Если порядок символа валюты, символа «-» и числа в введенной строке не соответствует шаблону, определенному свойствами negativeCurrencyFormat
и positiveCurrencyFormat
, тогда:
- свойству
value
возвращенного объекта CurrencyParseResult задается значениеNaN
; - свойству
currencyString
возвращенного объекта CurrencyParseResult задается значениеnull
; - свойству
lastOperationStatus
задается значение, указывающее на ошибку анализа.
Строка ввода может содержать пробелы, которые игнорируются в ходе анализа.
Анализ может успешно выполняться, даже если не указан символ валюты. Часть строки, соответствующая символу валюты, не проверяется. Если ввод не содержит символа или строки валюты, в качестве значения свойства currencyString
возвращенного объекта CurrencyParseResult задается пустая строка.
Когда этот метод вызывается и успешно выполняется, свойство lastOperationStatus
получает значение:
LastOperationStatus.NO_ERROR
В противном случае в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Параметры
inputString:String — Строка ввода для анализа.
|
CurrencyParseResult — Объект CurrencyParseResult, содержащий числовое значение и символ или строку валюты.
|
Выдает
TypeError — если параметр inputString имеет значение null.
|
Связанные элементы API
setCurrency | () | метод |
public function setCurrency(currencyISOCode:String, currencySymbol:String):void
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | Flash Player 10.1, AIR 2 |
Задает свойства currencyISOCode
и currencySymbol
объекта CurrencyFormatter.
Когда этот метод вызывается и успешно выполняется, свойство lastOperationStatus
получает значение:
LastOperationStatus.NO_ERROR
В противном случае свойства currencyISOCode
и currencySymbol
не изменяются, а в качестве значения свойства lastOperationStatus
задается одна из констант, определенных в классе LastOperationStatus
.
Параметры
currencyISOCode:String — Трехбуквенный код валюты ISO 4217 (например, USD для долларов США, EUR для евро). Должен содержать три прописных буквы от A до Z.
| |
currencySymbol:String — Символ или строка валюты для использования при форматировании денежных сумм. Может быть пустой строкой.
|
Выдает
TypeError — если currencyISOCode или currencySymbol имеет нулевое значение.
|
Связанные элементы API
В данном примере используются следующие локали:
- локаль операционной системы по умолчанию для форматирования денежных сумм (
LocaleID.DEFAULT
); - японская (Япония);
- английская (США);
- французская (Франция).
Для каждой локали в списке выполняются следующие действия.
- Создается объект CurrencyFormatter.
- Метод
formattingWithCurrencySymbolIsSafe()
проверяет, является ли валютой локали по умолчанию Евро (EUR), и, если да, строка форматируется с использованием символа валюты. В противном случае строка форматируется с использованием кода ISO.
package { import flash.display.Sprite; import flash.globalization.CurrencyFormatter; import flash.globalization.LocaleID; public class CurrencyFormatterExample1 extends Sprite { public function CurrencyFormatterExample1():void { var cf:CurrencyFormatter; var amountWithSymbol:String; var amountWithISOCode:String var localeNames:Array = [LocaleID.DEFAULT, "ja-JP", "en-US", "fr-FR"]; for each (var localeName:String in localeNames) { cf = new CurrencyFormatter(localeName); trace('\n' + "LocaleID requested=" + cf.requestedLocaleIDName + "; actual=" + cf.actualLocaleIDName); trace("Last Operation Status: " + cf.lastOperationStatus ); trace("Currency ISO Code: " + cf.currencyISOCode); if (cf.formattingWithCurrencySymbolIsSafe("EUR")) { amountWithSymbol = cf.format(123456789.19, true); trace("Format using Symbol: "+ amountWithSymbol); } else { amountWithISOCode = cf.format(123456789.19); trace("Format using ISO Code: " + amountWithISOCode); } } } } }
Выполняются следующие действия.
- Создается объект CurrencyFormatter для английского языка (США).
- Строка ввода анализируется с помощью метода
parse()
. - Отображается денежная сумма со строкой валюты, полученная из объекта CurrencyParseResult.
package { import flash.display.Sprite; import flash.globalization.CurrencyFormatter; import flash.globalization.CurrencyParseResult; import flash.globalization.LastOperationStatus; import flash.globalization.LocaleID; public class CurrencyFormatterParseExample extends Sprite { public function CurrencyFormatterParseExample() { var cf:CurrencyFormatter = new CurrencyFormatter( "en_US" ); trace("LocaleID requested=" + cf.requestedLocaleIDName + "; actual=" + cf.actualLocaleIDName); trace("Last Operation Status: " + cf.lastOperationStatus ); var inputString:String = "Dollar 123,567,89,0.254"; var result:CurrencyParseResult = cf.parse(inputString); if (cf.lastOperationStatus == LastOperationStatus.NO_ERROR ) { trace("Amount value: " + result.value); trace("Currency string: " + result.currencyString); } } } }
Tue Jun 12 2018, 11:34 AM Z