我的页面是utf-8的编码格式,直接在action里面获取毫无疑问会是乱码。请高手指点指点我应该在action里面怎么做才不会是乱码!!

解决方案 »

  1.   

    你应该添加一个Filter过滤字符编码.
      

  2.   

    request.setCharacterEncoding("UTF-8");
      

  3.   

    转码
    new String(yourStr.getBytes(),"UTF-8")
      

  4.   

    在 filter 中第一行调这个方法。
      

  5.   

    我别的页面都是GBK的就只有一个页面是utf-8的  也就这个有乱码问题
      

  6.   

    new String(request.getParameter("name").getBytes("iso-8859-1"),"gbk");
    直接转码
      

  7.   

    在web.xml里加上<!-- 著名 Character Encoding filter -->
        <filter>
            <filter-name>encodingFilter</filter-name>
            <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
            <init-param>
                <param-name>encoding</param-name>
                <param-value>UTF-8</param-value>
            </init-param>
            <init-param>
                <param-name>forceEncoding</param-name>
                <param-value>true</param-value>
            </init-param>
        </filter>
        <filter-mapping>
            <filter-name>encodingFilter</filter-name>
            <url-pattern>/*</url-pattern>
        </filter-mapping>
      
    jsp中文乱码解决方法大全| 关注Java    
      

  8.   

    对于 GBK 编码的请求你是如何处理的、
      

  9.   

    在STRUTS.XML里面添加
    <constant name="struts.i18n.encoding" value="utf-8"></constant>这个节点和package是同一级别的
    <package name="xxx" extends="xxx">
      

  10.   

    你试着在request请求和response回调中都明确编码格式看看
      

  11.   

    确认你的action类编码是什么编码?是utf-8吗?
      

  12.   

    硬编码 
    new String(request.getParameter("name").getBytes("iso-8859-1"),"gbk");
    直接转码
      

  13.   

    new String(request.getParameter("name").getBytes("iso-8859-1"),"gbk");
    直接转码
      

  14.   

    做一个过滤器类,即实现Filter接口
    public class ChinaFilter implements Filter{
     public void doFilter(ServletRequest req, ServletResponse rep,FilterChain chain)(
     HttpServletRequest request=(HttpServletRequest)req;
     HttpServletResponse response=(HttpServletResponse)rep;
     request.setCharacterEncoding("utf-8");
     chain.doFilter(request,response);    //通行
    }在配置文件中添加如下代码,即可解决:
    <filter>
    <filter-name>ChinaFilter</filter-name>
    <filter-class>filter.ChinaFilter</filter-class>
    </filter>
    <!-- 拦截的路径 -->
    <filter-mapping>
    <filter-name>ChinaFilter</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mappint>