包 | com.adobe.gravity.utility.message |
类 | public class FormatMessage |
继承 | FormatMessage Object |
语言版本: | ActionScript 3.0 |
产品版本: | Adobe Digital Enterprise Platform Experience Services - Client Component Framework 10 |
运行时版本: | AIR 1.1, Flash Player 9 |
Error {errorId}: The file {filename} could not be read.
When the error occurs, the message could be prepared for display with the following code:
var template:String = "Error {errorId}: The file {filename} could not be read."; var params:Object = new Object(); params.errorId = 42; params.filename = "/Users/alice/vacation.jpg"; var message:String = FormatMessage.formatString(template, params); // message="Error 42: The file /Users/alice/vacation.jpg could not be read."
The ActionScript object literal syntax is a convenient way to construct the parameter object. The following is functionally equivalent to the code above:
var template:String = "Error {errorId}: The file {filename} could not be read."; var params:Object = { errorId: 42, filename: "/Users/alice/vacation.jpg" }; var message:String = FormatMessage.formatString(template, params); // message="Error 42: The file /Users/alice/vacation.jpg could not be read."
Note that traditional numeric parameters are supported by simply using an Array as the parameter object:
var template:String = "Error {0}: The file {1} could not be read."; var params:Array = [ 42, "/Users/alice/vacation.jpg" ]; var message:String = FormatMessage.formatString(template, params); // message="Error 42: The file /Users/alice/vacation.jpg could not be read."
Note that for missing parameters, the empty string will be used:
var template:String = "Error {errorId}: The file {filename} could not be read."; var params:Object = { errorId: 42, }; var message:String = FormatMessage.formatString(template, params); // message="Error 42: The file could not be read."
Note that parameters are substituted verbatim, no parameter replacement or brace processing is performed on the parameters themselves:
var template:String = "{one}{two}{three}{four}{five}"; var params:Object = { one: "{five}", two: "{four}", three: "{three}", four: "{two}", five: "{one}" }; var message:String = FormatMessage.formatString(template, params); // message="{five}{four}{three}{two}{one}"
To escape an opening brace, double the initial brace:
var template:String = "The {{filename} parameter is {filename}."; var message:String = FormatMessage.formatString(template, {filename: "/Users/alice/vacation.jpg"}); // message="The {filename} parameter is /Users/alice/vacation.jpg."
Best practice: It can be useful to use formatString on all strings, parameterized or not, to ensure that escaping rules are consistent between parameterized and non-parameterized strings (since strings that were unparameterized may become parameterized and vice-versa).
方法 | 由以下参数定义 | ||
---|---|---|---|
[静态]
Given a message string, perform parameter substitution on it. | FormatMessage | ||
表示对象是否已经定义了指定的属性。 | Object | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
设置循环操作动态属性的可用性。 | Object | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
返回指定对象的原始值。 | Object |
formatString | () | 方法 |
public static function formatString(message:String, parameters:Object):String
语言版本: | ActionScript 3.0 |
产品版本: | Adobe Digital Enterprise Platform Experience Services - Client Component Framework 10 |
运行时版本: | AIR 1.1, Flash Player 9 |
Given a message string, perform parameter substitution on it.
参数
message:String — The parameterized message string. Must not be null.
| |
parameters:Object — An object with a property for each parameter that is to be substituted into the message. May be null (which means there are no parameters to be substituted).
|
String — The message string with any parameter substitution performed.
|
Tue Jun 12 2018, 11:04 AM Z