jfy3d(劍事)BLOG

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            37 隨筆 :: 0 文章 :: 363 評(píng)論 :: 0 Trackbacks

          native2ascii
          用這個(gè)命令轉(zhuǎn)換我覺(jué)得不方便 不知?jiǎng)e人如何 呵呵

          改頁(yè)面8859_1(不能是iso-8859-1)可以不用native2ascii轉(zhuǎn)換ApplicationResources.properties
          可是沒(méi)頁(yè)都要改啊8859_1也很麻煩

          所以只好找struts本身來(lái)解決了呵呵

          *不過(guò)這個(gè)方法只適合小應(yīng)用,不需要多國(guó)語(yǔ)言的*

          struts.jar

          org.apache.struts.taglib.bean.MessageTag類(lèi)


          找到doStartTag()方法

          里面有行ResponseUtils.write(super.pageContext, message);

          在這行上面加上一句 如下

          ??????? try
          ??????? {
          ??????????? message = new String(message.getBytes("iso-8859-1"), "gb2312");
          ??????? }
          ??????? catch(Exception exception) { }

          ??????? ResponseUtils.write(super.pageContext, message);


          這樣就OK了

          <%@ page contentType="text/html; charset=gb2312" language="java" %>
          要用gb2312

          posted on 2005-05-12 00:21 劍事 閱讀(5942) 評(píng)論(8)  編輯  收藏 所屬分類(lèi): struts

          評(píng)論

          # re: 修改struts源碼解決ApplicationResources.properties里不能直接用中文的一個(gè)方法 2005-05-12 09:18 femto
          還行了,習(xí)慣了。方正java挺傻的  回復(fù)  更多評(píng)論
            

          # re: 修改struts源碼解決ApplicationResources.properties里不能直接用中文的一個(gè)方法 2005-12-15 19:18 qq:9557040
          這樣不利于多國(guó)化,本來(lái)ApplicationResources.properties就是為了多國(guó)語(yǔ)言設(shè)計(jì)的,這樣做反而弄巧成拙了!  回復(fù)  更多評(píng)論
            

          # re: 修改struts源碼解決ApplicationResources.properties里不能直接用中文的一個(gè)方法 2006-03-02 14:21 天天累
          朋友,用你的方法解決了中文顯示問(wèn)題。可是通過(guò)formbean里validate方法里出錯(cuò)提示的中文沒(méi)有辦法解決。代碼如下:
          public ActionErrors validate(ActionMapping mapping,
          HttpServletRequest request) {
          ActionErrors errors = new ActionErrors();
          Locale locale = (Locale) request.getLocale();
          MessageResources messages = servlet.getResources();
          String usernameLabel = messages.getMessage(locale, "label.username");
          String passwordLabel = messages.getMessage(locale, "label.password");
          if (username == null || username.equals("")) {
          errors.add("username", new ActionError("errors.required", usernameLabel));
          }

          if (password == null || password.equals("")) {
          errors.add("password", new ActionError("errors.required", passwordLabel));
          }

          ApplicationResources.properties文件為:
          label.username=用戶(hù)名
          label.password=密碼
          errors.required={0} 不能為空

          提示出來(lái)的中文信息都是"?????"請(qǐng)問(wèn)該怎么解決呢?郁悶中  回復(fù)  更多評(píng)論
            

          # re: 修改struts源碼解決ApplicationResources.properties里不能直接用中文的一個(gè)方法 2006-03-02 14:41 劍事
          如果你用eclipse的話 把ApplicationResources.properties文件編碼改成ISO就可以了
          不需要我上面的方法

          我上面是改的標(biāo)記庫(kù) 你這個(gè)不通過(guò)標(biāo)記庫(kù)讀 就需要Resources地方修改了
          也就是ApplicationResources.properties第一個(gè)讀取類(lèi)  回復(fù)  更多評(píng)論
            

          # re: 修改struts源碼解決ApplicationResources.properties里不能直接用中文的一個(gè)方法 2006-03-02 16:34 天天累
          我用的就是eclipse。ISO指的是ISO-8859-1吧。把ApplicationResources.properties改成ISO-88591-1以后還是不行啊,還是亂碼!您說(shuō)的另一種方法改第一讀取ApplicationResources.properties類(lèi),應(yīng)該怎么改阿?是改java.util.ResourceBundle這個(gè)類(lèi)吧
            回復(fù)  更多評(píng)論
            

          # re: 修改struts源碼解決ApplicationResources.properties里不能直接用中文的一個(gè)方法 2006-03-02 20:58 劍事
          ResourceBundle對(duì) 從這地方讀出來(lái)后轉(zhuǎn)  回復(fù)  更多評(píng)論
            

          # re: 修改struts源碼解決ApplicationResources.properties里不能直接用中文的一個(gè)方法 2006-05-19 01:07 蜘蛛
          朋友,
          沒(méi)有用Poperties Editor 這個(gè)插件吧,
          它eclipse,jbuilder插件,可以直接編輯中文,保存就中文件就變成unicode編碼了,不是很麻煩的,
          不然你自己也可以開(kāi)發(fā)出一個(gè)插件解決一下這個(gè)問(wèn)題呀,沒(méi)有什么大不了的  回復(fù)  更多評(píng)論
            

          # re: 修改struts源碼解決ApplicationResources.properties里不能直接用中文的一個(gè)方法 2008-07-07 21:21 destimarve
          直接用eclipse插件ResourceBundle Editor一切都搞定!  回復(fù)  更多評(píng)論
            

          主站蜘蛛池模板: 土默特右旗| 南郑县| 锡林郭勒盟| 修武县| 竹溪县| 乐清市| 屯门区| 乐安县| 东兴市| 青神县| 刚察县| 黄骅市| 海城市| 商都县| 阿拉善盟| 永修县| 将乐县| 虹口区| 和林格尔县| 宁海县| 邢台县| 湾仔区| 玉溪市| 武冈市| 辽宁省| 卓尼县| 景德镇市| 乌苏市| 肥城市| 临泉县| 荣昌县| 江源县| 甘肃省| 彩票| 深圳市| 仁布县| 马公市| 阿拉善右旗| 梅州市| 临澧县| 全州县|