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 声明中使用,为请求的区域设置 ID 名称使用区域设置样式,并具有可绑定的方法和属性。

flash.globalization.CurrencyFormatter 类使用基础操作系统来实现格式化功能并提供特定于区域设置的数据。某些操作系统不支持 flash.globalization 类,在这些操作系统上,由包装器类提供回退功能。

flash.globalization.CurrencyFormatterNumberFormatterCurrencyFormatter 构造新的 CurrencyFormatter 对象以根据给定区域设置的约定设置表示货币金额的数字格式。 构造新的 CurrencyFormatter 对象以根据给定区域设置的约定设置表示货币金额的数字格式。

此类的区域设置由区域设置样式提供。可以使用下列方法来设置区域设置样式:

  • 在 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 从属属性 getter 或 locale 从属方法时,会从 topLevelApplication 对象中继承 locale 样式。

此类的大部分属性将自动根据 locale 样式来设置。如果 locale 样式发生改变,则任何未明确设置的属性也都会根据新的区域设置来进行更新。请注意,正在使用的实际区域设置是由 actualLocaleIDName 属性来指定的。

注意:当使用回退区域设置时,货币属性设置为默认值,因此 currencySymbolcurrencyISOCode 属性可能被设为意外的值。在为货币金额设置格式前,最好先检查 currencySymbolcurrencyISOCode 属性值。

actualLocaleIDNamelastOperationsStatus
format 创建字符串,该字符串表示根据此 CurrencyFormatter 对象的当前属性(包括 locale、useCurrencySymbol、currencySymbol 或 currencyISOCode 属性)设置格式的货币金额。一个字符串,其中包含设置了格式的货币值。 value一个对象,其中包含设置为货币字符串格式的数值。如果对象不是 Number,则将使用 Number() 转换函数来转换为数字。 创建字符串,该字符串表示根据此 CurrencyFormatter 对象的当前属性(包括 localeuseCurrencySymbolcurrencySymbolcurrencyISOCode 属性)设置格式的货币金额。

useCurrencySymbol 属性决定了 format 方法是否在设置了格式的货币金额中使用 currencySymbolcurrencyISOCodeuseCurrencySymobl 的默认值为 false,因此,默认情况下,将以 currencyISOCode 来设置货币金额的格式

许多国家/地区和区域使用同一货币符号来表示不同币种。例如,美国、澳大利亚、新西兰、加拿大和墨西哥对于本地货币值都使用同一种美元符号 ($)。当设置格式的货币与用户的本地货币不同时,最好使用 ISO 代码作为货币字符串。您可以使用 formattingWithCurrencySymbolIsSafe 方法来测试要设置格式的货币的 ISO 代码是否与格式化程序所使用的实际区域设置的默认货币 ISO 代码相匹配。

此方法可为极大数量级和极小数量级的数字设置格式。但有效位数不得超过 Number 数据类型提供的精度。

如果由于非法输入值或其它错误在设置格式时发生了错误,则默认情况下 format() 方法将返回 null。但是,如果 errorText 属性为非 null,则将返回 errorText 属性的值。设置 lastOperationStatus 属性以指明发生的错误。

在此示例中,locale 样式被设置为 fr-CA [French (Canada)]。此示例假设用户的操作系统支持此区域设置,因此不使用回退区域设置。对于 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),则会使用加拿大的默认货币符号。如果有多个默认的区域设置,则 CAD 的 currencyISOCode 将在设置了格式的货币金额中使用。

<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。 TypeErrorTypeError如果与 actualLocaleIDName 相对应的区域设置的默认 currencyISOCoderequestedISOCode 参数相匹配,则为 true,否则为 falserequestedISOCode三个字母的 ISO 4217 币种代码(例如,美元为 USD,欧元为 EUR)。必须包含从 A 到 Z 的三个大写字母。 确定是否可使用当前指定的货币符号为货币金额设置格式。

许多区域和国家/地区使用同一货币符号。此方法可用于确保避免使用存在歧义的货币符号,或使用由于使用回退区域设置而导致的与预期不同的货币符号或 ISO 代码。

此方法的一个常见用例是确定显示本地货币符号(如果将金额的格式设置为用户的默认货币)还是显示更加具体的 ISO 代码字符串(如果将金额的格式设置为与用户的默认货币不同的货币)。

此方法将 requestedISOCode 参数与实际区域设置的默认 currencyISOCode 做比较,当两个字符串相等时返回 true,否则返回 false。当两个字符串相等时,使用 format() 方法并将 useCurrencySymbol 属性设置为 true 会导致设置了格式的货币值字符串具有该当前区域设置中使用的货币符号。如果该方法返回 false,则使用 format() 方法并将 useCurrencySymbol 属性设置为 true 会导致使用存在歧义或不正确的货币符号。

actualLocaleIDNamecurrencySymbolcurrencyISOCodeuseCurrencySymbol
getAvailableLocaleIDNames 列出此类支持的所有区域设置 ID 名称。一个字符串矢量,其中包含此类和操作系统所支持的所有区域设置 ID 名称。 列出此类支持的所有区域设置 ID 名称。这是操作系统所支持的区域设置列表,而不是 ResourceManager 拥有其资源的区域设置列表。 parse 将字符串解析为货币金额和货币符号。如果 inputString 参数为 null。 TypeErrorTypeError一个包含数值和货币符号或字符串的 CurrencyParseResult 对象。 inputString要解析的输入字符串。 将字符串解析为货币金额和货币符号。

此解析算法使用 decimalSeparator 属性的值确定数值的整数部分和小数部分。它使用 negativeCurrencyFormatpositiveCurrencyFormat 属性的值确定与货币金额相关的货币符号或字符串的位置。对于负数金额,negativeCurrencyFormat 属性的值确定负号的位置以及是否使用圆括号。

如果输入字符串中的货币符号、负号和数字的顺序与 negativeCurrencyFormatpositiveCurrencyFormat 属性标识的模式不匹配,则:

  1. 返回的 CurrencyParseResult 对象的 value 属性设置为 NaN
  2. 返回的 CurrencyParseResult 对象的 currencyString 属性设置为 null
  3. lastOperationStatus 属性的值设置为 LastOperationStatus.PARSE_ERROR,表示解析失败。

输入字符串中可以包括空格字符,解析期间将忽略空格字符。

即使没有货币符号解析也可成功。没有验证与货币符号对应的字符串部分。如果没有货币符号或字符串,返回的 CurrencyParseResult 对象中的 currencyString 属性设置为空字符串。

spark.formatters.supportClasses.NumberFormatterBase.decimalSeparatornegativeCurrencyFormatpositiveCurrencyFormatflash.globalization.CurrencyParseResult
actualLocaleIDName 由该类对象使用的实际区域设置 ID 的名称。 由该类对象使用的实际区域设置 ID 的名称。这是用于从操作系统访问格式化数据和功能的区域设置。

如果由 locale 样式所设置的区域设置不可用,则 actualLocaleIDName 的值将不同于 locale 样式的值。它指明正在使用的回退区域设置。如果区域设置样式设置为 LocaleID.DEFAULT,将使用由用户的操作系统指定的区域设置的名称。

flash.globalization.CurrencyFormatter.actualLocaleIDNameCurrencyFormatter()
currencyISOCode 正在使用的实际区域设置的三字母 ISO 4217 币种代码(例如,如果为此属性分配 null 值。 TypeErrorTypeError 正在使用的实际区域设置的三字母 ISO 4217 币种代码(例如,USD、EUR、JPY、CNY)。

useCurrencySymbol 属性设置为 false 时,此代码将用于在使用 format() 方法设置货币金额格式时指示货币类型。

在基于正在使用的实际区域设置来设置区域设置样式时,将初始化此属性。当使用回退区域设置时,此属性反映回退区域设置的首选/默认币种代码。

默认值取决于实际区域设置和操作系统。

actualLocaleIDNameformat()currencySymbolformattingWithCurrencySymbolIsSafe()
currencySymbol 正在使用的实际区域设置的货币符号或字符串。如果为此属性分配 null 值。 TypeErrorTypeError 正在使用的实际区域设置的货币符号或字符串。

使用 withCurrencySymbol 参数设置为 trueformat() 方法设置货币金额格式时,此属性用作货币符号。

在基于正在使用的实际区域设置来设置区域设置样式时,将初始化此属性。当使用回退区域设置时,此属性反映回退区域设置的首选/默认货币符号,此符号可能不同于区域设置样式。

默认值取决于实际区域设置和操作系统。

actualLocaleIDNameformat()formattingWithCurrencySymbolIsSafe()currencyISOCode
negativeCurrencyFormat 表示负值货币金额的格式设置模式的数值。如果指定的值不介于 0 到 15 之间。 ArgumentErrorArgumentError 表示负值货币金额的格式设置模式的数值。此模式定义货币符号和负号或圆括号相对于货币金额的数字部分的位置。

此属性的值必须是在下表中定义的常量之一。

下表总结了负值货币金额的可能的格式设置模式。在使用 format() 方法为货币金额设置格式时:

  • “¤”符号由 currencyISOCodecurrencySymbol 属性的值替换,视传递到 format() 方法的 withCurrencySymbol 参数值而定;
  • “-”字符由 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() 方法为货币金额设置格式时:

  • “¤”符号由 currencyISOCodecurrencySymbol 属性的值替换,视传递到 format() 方法的 withCurrencySymbol 参数值而定;
  • “n”字符由传递到 format() 方法的货币金额值替换。
正值货币格式类型 格式化图案 0 ¤n 1 2 ¤ n 3 n ¤

默认值取决于实际区域设置和操作系统。

currencySymbolformat()
useCurrencySymbol 当设置货币金额格式时,启用对 currencySymbol 属性的使用。false 当设置货币金额格式时,启用对 currencySymbol 属性的使用。

useCurrencySymbol 属性设置为 true 时,将在 format 方法返回的字符串中使用 currencySymbol 属性的值。例如:$123,456,789.22

useCurrencySymbol 属性设置为 false 时,将在 format 方法返回的字符串中使用 currencyISOCode 属性的值。例如: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 类提供数值的区分区域设置的格式设置和解析。它可以设置 intuintNumber 对象的格式。

此类是包装 flash.globalization.NumberFormatter 类的包装器类。因此,特定于区域设置的格式化由 flash.globalization.NumberFormatter 提供。但是,此 NumberFormatter 类可在 MXML 声明中使用,为请求的区域设置 ID 名称使用区域设置样式,并具有可绑定的方法和属性。

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 从属属性 getter 或 locale 从属方法时,会从 topLevelApplication 对象中继承 locale 样式。

此类的大部分属性将自动根据区域设置样式来设置。如果区域设置样式发生改变,则任何未明确设置的属性也都会根据新的区域设置来进行更新。请注意,正在使用的实际区域设置是由 actualLocaleIDName 属性来指定的。

actualLocaleIDNamelastOperationsStatus
format 设置数字格式。设置了格式的数字字符串。 value一个对象,其中包含要设置格式的数值。如果对象不是 Number,则将使用 Number() 转换函数来转换为数字。 设置数字格式。

此函数根据格式程序的属性值设置数字格式。如果在设置 locale 样式后没有修改属性,则根据操作系统提供的由 actualLocaleIDName 属性标识的区域设置的特定于区域设置的约定为数字设置格式。要自定义格式,可以更改属性以控制设置数字格式的特定方面。

可以使用此函数设置非常大的数字和非常小的量级的数字的格式。但有效位数不得超过 Number 对象提供的精度。不支持科学计数法。

如果由于非法输入值或其它错误在设置格式时发生了错误,则默认情况下 format() 方法将返回 null。但是,如果 errorText 属性为非 null,则将返回 errorText 属性的值。将设置 lastOperationStatus 属性以指明发生的错误。

NumberFormatterspark.formatters.supportClasses.NumberFormatterBase.errorTextlastOperationStatus
getAvailableLocaleIDNames 列出此类支持的所有区域设置 ID 名称。一个字符串矢量,其中包含此类和操作系统所支持的所有区域设置 ID 名称。 列出此类支持的所有区域设置 ID 名称。这是操作系统所支持的区域设置列表,而不是 ResourceManager 拥有其资源的区域设置列表。 parseNumber 解析仅包含数字和可选空白字符的字符串并返回一个数字。如果 parseStringnull TypeErrorTypeError包含数字值的 Number 对象。 parseString要解析的输入字符串。 解析仅包含数字和可选空白字符的字符串并返回一个数字。如果字符串不以数字开头或包含除空格之外的不属于数字部分的字符,则此方法返回 NaN。忽略数字前后的空格。

如果数字位数前面或后面跟着一个加号“+”,这个加号作为非空白字符处理。返回值为 NaN

有关数字解析和有效数字构成部分的更多信息,请参阅解析功能的说明。

parse()flash.globalization.NationalDigitsType
parse 解析字符串并返回包含解析的元素的 NumberParseResult 对象。如果 inputString 参数为 null。 TypeErrorTypeErrorNumberParseResult 对象包含数值和包含该数值的字符串部分的起点与终点的索引。 inputString要解析的输入字符串。 分析字符串并返回包含已分析的元素的 NumberParseResult 对象。

NumberParseResult 对象包含在输入字符串中找到的第一个数字的值、字符串内数字的起始索引以及字符串中数字之后的第一个字符的索引。

如果字符串中不包含数字,NumberParseResult 的属性值设置为 NaNstartIndexendIndex 属性值设置为十六进制值 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”

允许数字和负号或括号之间存有单个空格。空白字符是 Unicode 字符数据库中具有 Space Separator (Zs) 属性的字符。有关详细信息,请参阅 http://www.unicode.org/ucd/

确定有效的数字时,忽略其它属性。具体来说,忽略 digitsType 属性的值,并且数字可以来自 NationalDigitsType 类中枚举的任何数字集。groupingPatternuseGrouping 属性的值不影响数字的解析。

如果字符串中数字的前面或后面有加号“+”,加号被视为不属于数字部分的字符。

此函数不解析包含以科学记数法表示的数字(例如,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 由该类对象使用的实际区域设置 ID 的名称。 由该类对象使用的实际区域设置 ID 的名称。这是用于从操作系统访问格式化数据和功能的区域设置。

如果由 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 声明中使用,为请求的区域设置 ID 名称使用区域设置样式,并具有可绑定的方法和属性。

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 从属属性 getter 或 locale 从属方法时,会从 topLevelApplication 对象中继承 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 样式属性、dateStyletimeStyle 属性所设置的),或为此 DateTimeFormatter 实例指定的dateTimePattern 来执行格式设置。

如果由于非法输入值或其它错误在设置格式时发生了错误,则默认情况下 format() 方法将返回 null。但是,如果 errorText 属性为非 null,则将返回 errorText 属性的值。将设置 lastOperationStatus 属性以指明发生的错误。

dateStyletimeStyleDatedateTimePatternDateTimeFormatter
getAvailableLocaleIDNames 列出此类支持的所有区域设置 ID 名称。一个字符串矢量,其中包含此类和操作系统所支持的所有区域设置 ID 名称。 列出此类支持的所有区域设置 ID 名称。这是操作系统所支持的区域设置列表,而不是 ResourceManager 拥有其资源的区域设置列表。 getFirstWeekday 返回一个整数,它对应于此区域设置和日历系统的每周第一天。一个整数,对应于此区域设置和日历系统的每周第一天。 返回一个整数,它对应于此区域设置和日历系统的每周第一天。值 0 对应于星期日,1 对应于星期一,依此类推,6 对应于星期六。 getMonthNames 检索包含当前日历系统的月名称的本地化字符串列表。如果 nameStylecontext 参数为 null。 TypeErrorTypeError一个本地化字符串矢量,其中包含当前区域设置(由区域设置样式指定)、名称样式和上下文的月名称。矢量中位于索引 0 处的第一个元素表示一年中第一个月的名称;下一个元素表示一年中第二个月的名称;以此类推。 nameStylefull表示要使用的名称字符串样式。有效值为:
  • DateTimeNameStyle.FULL
  • DateTimeNameStyle.LONG_ABBREVIATION
  • DateTimeNameStyle.SHORT_ABBREVIATION
contextstandalone指示将在其中使用设置了格式的字符串的上下文的代码。此上下文只对于某些区域设置有差别。有效值为:
  • DateTimeNameContext.FORMAT
  • DateTimeNameContext.STANDALONE
检索包含当前日历系统的月名称的本地化字符串列表。列表中的第一个元素表示一年中第一个月的名称。
flash.globalization.DateTimeNameContextflash.globalization.DateTimeNameStyle
getWeekdayNames 检索包含当前日历系统的工作日名称的本地化字符串列表。如果 nameStylecontext 参数为 null。 TypeErrorTypeError一个本地化字符串矢量,其中包含当前区域设置(由区域设置样式指定)、名称样式和上下文的月名称。矢量中位于索引 0 处的第一个元素是星期日的名称;下一个元素是星期一的名称;依此类推。 nameStylefull表示要使用的名称字符串样式。有效值为:
  • DateTimeNameStyle.FULL
  • DateTimeNameStyle.LONG_ABBREVIATION
  • DateTimeNameStyle.SHORT_ABBREVIATION
contextstandalone指示将在其中使用设置了格式的字符串的上下文的代码。该上下文仅适用于月份名称随上下文变化的特定区域设置。例如,在希腊语中,月份名称单独显示时同与日一起显示时不同。有效值为:
  • DateTimeNameContext.FORMAT
  • DateTimeNameContext.STANDALONE
检索包含当前日历系统的工作日名称的本地化字符串列表。列表中的第一个元素表示星期日的名称。
flash.globalization.DateTimeNameContextflash.globalization.DateTimeNameStyle
actualLocaleIDName 由该类对象使用的实际区域设置 ID 的名称。 由该类对象使用的实际区域设置 ID 的名称。这是用于从操作系统访问格式化数据和功能的区域设置。

如果由 locale 样式所设置的区域设置不可用,则 actualLocaleIDName 的值将不同于 locale 样式的值。它指明正在使用的回退区域设置。如果区域设置样式设置为 LocaleID.DEFAULT,将使用由用户的操作系统指定的区域设置的名称。

flash.globalization.DateTimeFormatter.actualLocaleIDNameDateTimeFormatter()
dateStyle 此 DateTimeFormatter 实例的日期样式。如果指定的值不是有效的 DateTimeStyle 常量或指定的值是 DateTimeStyle.CUSTOMArgumentErrorArgumentError如果设置为 dateStylenullTypeErrorTypeError<code>DateTimeStyle.LONG</code> 此 DateTimeFormatter 实例的日期样式。日期样式用于从操作系统检索预定义的时间和特定于区域设置的格式设置模式。在设置日期格式时,locale 样式、timeStyledateStyle 属性决定了日期的格式。可以使用以下两种方法来设置日期样式的值:指定 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. 通过设置 dateStyletimeStyle 属性。
  2. 通过设置 dateTimePattern 属性。

如果直接为此属性指定了值,则会产生副作用,当前时间与日期样式将被重写,并设置为值 DateTimeStyle.CUSTOM

有关模式语法的说明,请参阅 flash.globalization.DateTimeFormatter.setDateTimePattern() 方法。

dateStyletimeStyle
errorText 当发生错误时,由 format() 方法返回的字符串。null 当发生错误时,由 format() 方法返回的字符串。

如果 errorText 为非 null,并且在设置日期的格式时发生了错误,则 format 方法将返回为此属性指定的字符串。

例如: 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.CUSTOMArgumentErrorArgumentError如果 dateStyletimeStyle 参数为 null。 TypeErrorTypeError<code>DateTimeStyle.LONG</code> 此 DateTimeFormatter 实例的时间样式。时间样式用于从操作系统检索预定义的时间和特定于区域设置的格式设置模式。在设置日期格式时,locale 样式、timeStyledateStyle 属性决定了日期的格式。可以使用以下两种方法来设置时间样式的值:指定 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()