套件 | 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, 03:47 PM Z