WEB开发网
开发学院软件开发Java 使用 IBM Rational Application Developer 轻松实... 阅读

使用 IBM Rational Application Developer 轻松实现 JavaServer Faces Web 程序的全球化

 2009-10-08 00:00:00 来源:WEB开发网   
核心提示: “format:EEEE, MMMM d, yyyy h:mm:ss a z” 意味着 DateTimeConverter 用于格式化日期/时间的模式,到目前为止,使用 IBM Rational Application Developer 轻松实现 JavaServer

“format:EEEE, MMMM d, yyyy h:mm:ss a z” 意味着 DateTimeConverter 用于格式化日期/时间的模式。

到目前为止,我们已经向您展示了,您需要什么客户代码来格式化日期/时间。但这并不足够。考虑一下模式。您知道对于不同的场所模式会是什么样的吗?

例如,对于美国用户的模式是这样的:

EEEE,MMMM d,yyyy h:mm:ss a z

而日本客户的模式是这样的:

yyyy'年'M'月'd'日'EEEE H'時'mm'分'ss'秒'z

还好模式并不是硬代码的,因为开发员并不可能知道不同场所的所有模式。像 “yyyy mm dd”这样的模式对于某个开发员来说可能是合理的,但是对用户看来就是很古怪的 。

因此,答案就是从服务器端获取模式,因为 ICU4J 已经为所有开发员的使用准备好了模式。列表 4 中的代码展示了,我们怎样根据本地的请求获取一个模式:

列表 4. 通过使用 ICU4J 来生成日期/时间模式

public class FormatterUtils 
{ 
  public static String getDateTimePattern(int dateFormat) 
  { 
    Locale locale = 
      FacesContext.getCurrentInstance().getExternalContext().getRequestLocale(); 
    CalendarData calData = new 
      CalendarData(ULocale.forLocale(locale), null); 
    String[] dateTimePatterns = calData.getStringArray("DateTimePatterns"); 
    return dateTimePatterns[dateFormat + 4] + " " + dateTimePatterns[dateFormat]; 
  } 
} 

参数 dateFormat 显示了格式模式使用的方法。基本上,在 ICU com.ibm.icu.text.DateFormat 类中有四种预定义的类型:

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:使用 IBM Rational

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接