解决中文乱码

原创 2007年09月28日 08:43:00

package com.hygj.servlet;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

public class FilterServlet extends HttpServlet implements Filter {
  private FilterConfig filterConfig;
  //Handle the passed-in FilterConfig
  public void init(FilterConfig filterConfig) {
    this.filterConfig = filterConfig;
  }
  //Process the request/response pair
  public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) {
    try {
      //一次性解决所有叶面的中文问题
      //System.out.println("filter");
      //request.setCharacterEncoding("gb2312");
      filterChain.doFilter(request, response);
    }
    catch(ServletException sx) {
      filterConfig.getServletContext().log(sx.getMessage());
    }
    catch(IOException iox) {
      filterConfig.getServletContext().log(iox.getMessage());
    }
  }
  //Clean up resources
  public void destroy() {
  }
}

---------------------

package com.hygj.servlet;

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

public class LoginServlet extends HttpServlet {
  private static final String CONTENT_TYPE = "text/html;charset=gb2312";
  //Initialize global variables
  public void init() throws ServletException {
  }
  //Process the HTTP Get request
  public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    //解决出的乱码
    response.setContentType(CONTENT_TYPE);
    PrintWriter out = response.getWriter();
    //解决请求中的乱码
    //request.setCharacterEncoding("GB2312");
    String user=request.getParameter("user");
    String pwd=request.getParameter("pwd");
    //通过字符串的重新格式化的方式解决乱麻
    user=new String(user.getBytes("ISO-8859-1"),"GB2312");
    pwd=new String(pwd.getBytes("ISO-8859-1"),"GB2312");


    System.out.println(user);
    System.out.println(pwd);
    out.println("<html>");
    out.println("<head><title>LoginServlet</title></head>");
    out.println("<body bgcolor=/"#ffffff/">");
    out.println("<p>The servlet has received a " + request.getMethod() + ". This is the reply.</p>");
    out.print("这是我的servlet");
    out.println("</body></html>");
  }
  //Process the HTTP Post request
  public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    doGet(request, response);
  }
  //Clean up resources
  public void destroy() {
  }
}

 

js base64 解码解决中文乱码问题

  • 2017年11月16日 14:33
  • 5KB
  • 下载

express中文乱码解决

  • 2017年11月19日 16:25
  • 62B
  • 下载

Get,Post请求中文乱码问题有效解决方法

对于做Java WEB项目同学来说,中文乱码问题是一个经常遇到而又非常头痛的问题,而最容易出现乱码的环节就是在浏览器向服务器发送请求的过程,至于出现乱码的原因不是本文的关注的重点,想了解的朋友可以参考...
  • rchm8519
  • rchm8519
  • 2014年12月14日 22:57
  • 54953

mysql中文乱码的解决方法

  • 2016年11月17日 00:38
  • 317KB
  • 下载

解决Windows下python中文乱码问题

python解释器的默认编码方式和windows的默认编码方式不一致,如果编程时不注意很可能在处理非ASCII字符时出错...

java中文乱码解决问题

  • 2015年04月15日 11:26
  • 17KB
  • 下载

解决tomcat下中文乱码问题

  • 2014年10月01日 11:34
  • 65KB
  • 下载

ajax中文乱码解决方法

网上这样类似的帖子很多,但是发现这篇帖子对我的程序没有任何帮助。有些受到误导,但是还是有一定的价值的,所以在此贴出。供后来者参考。但是请注意我用红色标记的地方,因为这格方法对我的程序没有用,发现很多的...

linux解决中文乱码问题

  • 2014年12月09日 15:18
  • 12KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:解决中文乱码
举报原因:
原因补充:

(最多只允许输入30个字)