那就加个filter呗
request.setCharacterEncoding("ISO8859-1");
大概是这个意思吧

解决方案 »

  1.   

    我这里有一个Html的解码方法,你可以用到那些&开头的字符串上
    http://www.java2000.net/viewthread.jsp?tid=102
      

  2.   

    JSP中用GBK. 如果还有乱码就在Action中用String str=new String((req.getParameter("Name")).getBytes("GBK"),"ISO-8859-1"); 
      

  3.   

    如果是url的参数带中文的
    可以改下面这个文件,加入一个URIEncoding="GBK"
    X:\Tomcat 5.5\conf\Server.xml
     <Connector
            port="8080"
            redirectPort="8443"
            minSpareThreads="25"
            connectionTimeout="30"
            maxThreads="150"
            maxSpareThreads="75"
    URIEncoding="GBK">
    要是post提交带中文的,就加个过滤器
    web.xml
    <filter>
    <filter-name>encoding</filter-name>
    <filter-class>
    struts.form.FilterEncoding
    </filter-class>
    <init-param>
    <param-name>encoding</param-name>
    <param-value>gbk</param-value>
    </init-param>
    </filter>
    <filter-mapping>
    <filter-name>encoding</filter-name>
    <url-pattern>/*</url-pattern>
    </filter-mapping>FilterEncoding
    package struts.form;import java.io.IOException; 
    import javax.servlet.Filter; 
    import javax.servlet.FilterChain; 
    import javax.servlet.FilterConfig; 
    import javax.servlet.ServletException; 
    import javax.servlet.ServletRequest; 
    import javax.servlet.ServletResponse; 
    public class FilterEncoding implements Filter 

    protected String encoding;       
    protected boolean ignore;          
    protected FilterConfig filterConfig;  public void init(FilterConfig filterConfig) throws ServletException 
    {
    encoding = filterConfig.getInitParameter("encoding"); 
    String value = filterConfig.getInitParameter("ignore"); 
    if(value == null) 

    ignore = true; 
    }
    else if(value.equalsIgnoreCase("yes")) 

    ignore = true; 

    else if(value.equalsIgnoreCase("true")) 

    ignore = true; 


    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException 
    {
    if(ignore || request.getCharacterEncoding() == null) 
    {
    String encoding = selectEncoding(request); 
    if(encoding != null) 
    {
    request.setCharacterEncoding(encoding); 
    }
    }
    chain.doFilter(request, response); 

    private String selectEncoding(ServletRequest request) 

    return encoding; 

    public void destroy() 

      

    }
      

  4.   

    java2000_net 太帅了 您能不能说一下 &#38463 像这个是个什么码阿 它应该是页面传过来的参数的ISO8859-1的编码么 要是的话怎么还用html的解码 呢   
      

  5.   

    “38463” 是unicode码么 那前面的&#是什么意思呢 我记得参数应该被转换成ISO8859-1码 阿
      

  6.   

    java2000_net 大哥 您再指点我一下阿