1. 准备三个资源文件i3-label.properties、i3-label_en_US.properties、i3-label_zh_CN.properties,将资源文件放在WEB-INF目录下。
i3-label.properties:
title=Greeting
msg=Hello, {0}!
i3-label_en_US.properties:
title=Greeting
msg=Hello, {0}!
i3-label_zh_CN.properties:
title=问候
msg=你好,{0}!
2. 在zul页面中添加taglib指令:
3. 有三种方式可以使用国际化资源:
EL表达式内置对象labels:
标签库c:l('key'):
Java代码中用org.zkoss.util.resource.Labels对象实例获取:
String title = Labels.getLabel("title");
String msg = Labels.getLabel("msg", new String[]{"Huey"});
4. 修改 Locale:
Locale locale = new Locale("zh", "CN");
session.setAttribute(org.zkoss.web.Attributes.PREFERRED_LOCALE, locale);
5. 示例:
2 ?
new Locale(localeValue.substring(0,2),localeValue.substring(3)) : new Locale(localeValue);
// 修改Locale
session.setAttribute(org.zkoss.web.Attributes.PREFERRED_LOCALE, preferLocale);
session.setAttribute("Demo_Locale", self.getSelectedIndex());
execution.sendRedirect("");
]]>