asdtiang的博客 感謝blogjava提供的博客交流平臺

          struts2.1.8 action提交亂碼解決辦法

          Posted on 2010-04-15 10:33 asdtiang 閱讀(968) 評論(0)  編輯  收藏 所屬分類: java ee
          這個問題是2.1.6里的BUG,在2.1.8的時候解決了,文本框里的中文能正常提交:不過url中的param提交的是UTF-8編碼,中文是UTF-8編碼,英文還是英文。
          <s:url id="del" value="editView.action">
                <s:param name="name">
                 <s:property value="name" />        ///這里會提交UTF-8編碼
                </s:param>
           </s:url>
          記得以前好像寫過,不過不知道放哪里,今天用struts2.1.8+spring+hibernate做開發(fā)時,又遇到這個問題,寫出來吧,下次好找:
          頁面編碼設(shè)置成UTF-8,如何提交的中文為”青云山“,提交到action里變成了:   38738其實就是UTF-8編碼,自己寫了一個類進行轉(zhuǎn)化一個就行了。
          public class MyConverter {

              
          private static MyConverter myConverter;

              
          private StringBuffer str;
              
          private char[] ch;

              
          private MyConverter() {

              }

              
          public static MyConverter getMyConverter() {

                  
          if (myConverter == null) {
                      myConverter 
          = new MyConverter();
                  }
                  
          return myConverter;

              }

              
          public String converter(String str3) {

                  
          if(str3==null){
                      
          return "";
                  }
                  str
          =new StringBuffer();
                  str.append(
          "");
                  ch
          =str3.toCharArray();
                  
          for (int i = 0; i < ch.length; i++) {
                      
                      
          if(ch[i]=='&'){
                          
          if(ch[i+1]=='#')
                          {                
                              str.append(Character.toChars(Integer.parseInt(
          new String(ch,i+2,5))));
                              i
          +=7;
                          }
                          
          else{
                              str.append(ch[i]);
                          }
                      }
                      
          else{
                          str.append(ch[i]);
                      }    
                  }
                  
          return str.toString();
              }
          }






          使用時,在action中,可能有中文提交的地方轉(zhuǎn)化一下就行了。
           MyConverter my = MyConverter.getMyConverter();
          this.userName = my.converter(this.userName);

          天蒼蒼,野茫茫,風吹草底見牛羊

          posts - 80, comments - 24, trackbacks - 0, articles - 32

          Copyright © asdtiang

          asdtiang的博客 PaidMailz
          點擊廣告網(wǎng)賺A(每天4個廣告,每個0.0025美元,一個搜索廣告0.03美元)
          主站蜘蛛池模板: 泸定县| 凤山县| 兴海县| 石泉县| 抚州市| 同仁县| 印江| 苗栗县| 屯门区| 浪卡子县| 陕西省| 九龙县| 洛宁县| 五莲县| 尚志市| 普洱| 辰溪县| 林口县| 三原县| 福州市| 怀安县| 那曲县| 余姚市| 阜康市| 星子县| 汉阴县| 绥中县| 福泉市| 静乐县| 潮州市| 关岭| 肥东县| 长宁县| 平武县| 城口县| 滕州市| 济源市| 涟水县| 乌拉特后旗| 金门县| 邯郸县|