呆呆向前沖的blog

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

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

                轉換編碼:將資源文件內容轉換為unicode編碼。以中文資源文件轉換為例,命令如下:            

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

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

          <message-resources parameter="ApplicationResources" />

          2 設置JSP編碼為UTF-8

          3 切換當前Locale
                Struts是根據Session中存儲的關鍵字為org.apache.struts.action.LOCALE的Locale對象判斷當前的Locale,
          并自動加載相應的資源文件。
                即如果當前locale是zh CN,那么會自動加載 ApplicationResources_zh_CN.properties。所以如果要顯示多語言版本,必須切換當前locale。例子如下:
                切換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");
            }

          }

                頁面文件中調用該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技術
          主站蜘蛛池模板: 赫章县| 奈曼旗| 莒南县| 合江县| 桂阳县| 隆子县| 勃利县| 芦溪县| 仙桃市| 合江县| 桂阳县| 麻城市| 正阳县| 马鞍山市| 桃源县| 上饶市| 灯塔市| 二连浩特市| 洪泽县| 凉城县| 弥勒县| 福泉市| 修武县| 新绛县| 东方市| 普陀区| 买车| 双桥区| 葫芦岛市| 炉霍县| 大厂| 瑞昌市| 昭觉县| 察哈| 胶州市| 红安县| 古丈县| 资阳市| 门源| 玛纳斯县| 延边|