MessageFormat 类用来格式化消息。非常的好用
import java.util.*;
import java.text.*;
public class MessageFormatDemo {
static void displayMessage(Locale currentLocale) {
System.out.println("currentLocale = " + currentLocale.toString());
System.out.println();
Object[] messageArguments = {
"Mars",
new Integer(7),
new Date()
};
MessageFormat formatter = new MessageFormat("");
formatter.setLocale(currentLocale);
String template = "At {2,time,short} on {2,date,long}, we detected " +
"{1,number,integer} spaceships on the planet {0}.";
formatter.applyPattern(template);
String output = formatter.format(messageArguments);
System.out.println(output);
}
static public void main(String[] args) {
displayMessage(new Locale("en", "US"));
}
}
tempate 参数说明
Arguments for template | |
Argument | Description |
{2,time,short} | The time portion of a Dateobject. The short style specifies theDateFormat.SHORT formatting style. |
{2,date,long} | The date portion of a Dateobject. The same Dateobject is used for both the date and time variables. In the Objectarray of arguments the index of the element holding the Date object is 2. (This is described in the next step.) |
{1,number,integer} | A Number object, further qualified with the integernumber style. |