呆呆向前沖的blog

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            78 隨筆 :: 43 文章 :: 5 評論 :: 74 Trackbacks

          步驟
          1 資源文件
               添加資源文件:JB里默認的資源文件名稱為ApplicationResources.properties。需要添加和語言地區(qū)對應(yīng)的資源文件。如:ApplicationResources_zh_CN.properties、ApplicationResources_en_US.properties
                注意:命名一定要注意后綴的正確。否則struts不能自動加載

                轉(zhuǎn)換編碼:將資源文件內(nèi)容轉(zhuǎn)換為unicode編碼。以中文資源文件轉(zhuǎn)換為例,命令如下:            

          native2ascii -encoding GBK src/zh_cn.properties src/ApplicationResources_zh_CN.properties
                      注:zh_cn.properties文件是暫存原始內(nèi)容的文件

                配置資源文件到struts-config.xml中:在配置文件中加入如下資源文件引用

          <message-resources parameter="ApplicationResources" />

          2 設(shè)置JSP編碼為UTF-8

          3 切換當前Locale
                Struts是根據(jù)Session中存儲的關(guān)鍵字為org.apache.struts.action.LOCALE的Locale對象判斷當前的Locale,
          并自動加載相應(yīng)的資源文件。
                即如果當前l(fā)ocale是zh CN,那么會自動加載 ApplicationResources_zh_CN.properties。所以如果要顯示多語言版本,必須切換當前l(fā)ocale。例子如下:
                切換Locale的Action代碼:

          public class SetLocaleAction extends Action {
            
          public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest req, HttpServletResponse httpServletResponse) {
              String langFlag 
          = req.getParameter("lang");
              String[] lang 
          = langFlag.split("_");
              Locale locale 
          = new Locale(lang[0],lang[1]);
              HttpSession session 
          = req.getSession(true);
              session.setAttribute(
          "org.apache.struts.action.LOCALE",locale);
              
          return actionMapping.findForward("forward");
            }

          }

                頁面文件中調(diào)用該Action的鏈接:

          <html:link action="setLocale.do?lang=zh_CN">chinese</html:link>
          <html:link action="setLocale.do?lang=en_US">America</html:link>

          不過對于Java中的編碼問題,理解的還不透徹。比如中文字符在頁面之間的傳遞問題。如何保證能正確的接收各種語言的輸入。

          posted on 2005-08-28 03:34 呆呆向前沖的blog 閱讀(1317) 評論(0)  編輯  收藏 所屬分類: 工作:Java技術(shù)
          主站蜘蛛池模板: 清新县| 安西县| 滁州市| 从江县| 广平县| 安乡县| 绩溪县| 加查县| 长治县| 定陶县| 紫云| 象山县| 道孚县| 玉树县| 巴彦淖尔市| 温宿县| 融水| 阿瓦提县| 句容市| 大连市| 延安市| 榆林市| 宜君县| 平安县| 上林县| 常熟市| 东台市| 紫阳县| 开化县| 三河市| 凌云县| 集贤县| 喜德县| 大庆市| 叶城县| 克山县| 淄博市| 会泽县| 彩票| 孟村| 体育|