以下内容均是我收集于互联网 1、繁体字转换工具 用来处理GB2312/BIG5码字符互相转换的类.可到网上搜索 2、filter拦截方法 public class FileCaptureResponseWrapper extends HttpServletResponseWrapper ... { public static final int OT_NONE = 0, OT_WRITER = 1, OT_STREAM = 2; private int outputType = OT_NONE; private ServletOutputStream output = null; private PrintWriter writer = null; private ByteArrayOutputStream buffer = null; public FileCaptureResponseWrapper(HttpServletResponse resp) throws IOException ...{ super(resp); buffer = new ByteArrayOutputStream(); } public PrintWriter getWriter() throws IOException ...{ if(outputType==OT_STREAM) throw new IllegalStateException(); else if(outputType==OT_WRITER) return writer; else ...{ outputType = OT_WRITER; writer = new PrintWriter(new OutputStreamWriter(buffer, getCharacterEncoding())); return writer; } } public ServletOutputStream getOutputStream() throws IOException ...{ if(outputType==OT_WRITER) throw new IllegalStateException(); else if(outputType==OT_STREAM) return output; else ...{ outputType = OT_STREAM; output = new WrappedOutputStream(buffer); return output; } } public void flushBuffer() throws IOException ...{ if(outputType==OT_WRITER) writer.flush(); if(outputType==OT_STREAM) output.flush(); } public void reset() ...{ outputType = OT_NONE; buffer.reset(); } public byte[] toByteArray() throws IOException ...{ flushBuffer(); return buffer.toByteArray(); }} class WrappedOutputStream extends ServletOutputStream ... { private ByteArrayOutputStream buffer; public WrappedOutputStream(ByteArrayOutputStream buffer) ...{ this.buffer = buffer; } public void write(int b) throws IOException ...{ buffer.write(b); } public byte[] toByteArray() ...{ return buffer.toByteArray(); }} 3、web.xml配置 < filter > < filter-name > GbAndBig5Filter </ filter-name > < filter-class > zeal.util.GbAndBig5Filter </ filter-class > </ filter > < filter-mapping > < filter-name > GbAndBig5Filter </ filter-name > < url-pattern > *.shtml </ url-pattern > </ filter-mapping > < filter-mapping > < filter-name > GbAndBig5Filter </ filter-name > < url-pattern > *.jsp </ url-pattern > </ filter-mapping > < filter-mapping > < filter-name > GbAndBig5Filter </ filter-name > < url-pattern > *.html </ url-pattern > </ filter-mapping > < filter-mapping > < filter-name > GbAndBig5Filter </ filter-name > < url-pattern > *.htm </ url-pattern > </ filter-mapping > 4、过滤器 public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException ... { HttpServletRequest httpRequest = (HttpServletRequest) request; HttpServletResponse httpResponse = (HttpServletResponse) response; FileCaptureResponseWrapper wrapperResponse = new FileCaptureResponseWrapper(httpResponse); chain.doFilter(httpRequest, wrapperResponse); byte[] bytes=wrapperResponse.toByteArray(); String s=""; try ...{ s = new String(GB2Big5.getInstance().gb2big5(bytes,"UTF-8"), "BIG5"); } catch (Exception e) ...{ e.printStackTrace(); } // response.setContentType("text/html;charset=UTF-8"); PrintWriter pr = response.getWriter(); pr.print(s); pr.flush(); pr.close(); }