`
yshlin
  • 浏览: 62595 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

java中的乱码解决方案

    博客分类:
  • java
阅读更多

java后台转换编码
str= new String(str.getBytes("iso8859-1"),"UTF-8");
str= new String(str.getBytes("iso8859-1"),"GBK");
 
servlet中设置编码
response.setContentType("text/html; charset=GBK");


JSP中调整乱码
<%@ page language="java" contentType="text/html;charset=GBK" pageEncoding="GBK" %>


服务器 tomcat中设计编码
更改 Tomcat\conf\server.xml,指定浏览器的编码格式为“简体中文”: 
<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
改成
<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" URIEncoding="UTF-8"/>
 

web.xml中添加过滤器

<filter>  
    <filter-name>CharacterEncodingFilter</filter-name>  
    <filter-class>com.worthtech.app.filter.CharacterEncodingFilter</filter-class>  
    <init-param>  
      <param-name>encoding</param-name>  
      <param-value>UTF-8</param-value>  
    </init-param>  
    <init-param>  
      <param-name>ignore</param-name>  
      <param-value>true</param-value>  
    </init-param>  
  </filter>  
  <filter-mapping>  
    <filter-name>CharacterEncodingFilter</filter-name>  
    <url-pattern>/*</url-pattern>  
  </filter-mapping> 

 

 

 

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 CharacterEncodingFilter implements Filter {   
  
    private String encoding=null;   
    private boolean ignore=true;   
       
    public void destroy() {   
        // TODO Auto-generated method stub   
        encoding=null;   
    }   
  
    /**   
       * 过滤请求,用户提交请求时起作用   
     */     
    public void doFilter(ServletRequest request, ServletResponse response,   
            FilterChain chain) throws IOException, ServletException {   
        // TODO Auto-generated method stub   
        if(ignore||request.getCharacterEncoding()==null){   
            String encoding=getEncoding();   
            if(encoding!=null){   
                request.setCharacterEncoding(encoding);   
            }   
        }   
//      System.out.println("encoding===="+encoding);   
        response.setContentType("text/html;charset="+encoding);   
//      do something here   
        //当前工作全部完成后,将请求放开给过滤器链的下一filter    
        chain.doFilter(request, response);   
    }   
  
    public void init(FilterConfig filterConfig) throws ServletException {   
        // TODO Auto-generated method stub   
        this.encoding=filterConfig.getInitParameter("encoding");   
        String value=filterConfig.getInitParameter("ignore");   
        if(value==null){   
            this.ignore=true;   
        }else if(value.equalsIgnoreCase("true")){   
            this.ignore=true;   
        }else if(value.equalsIgnoreCase("yes")){   
            this.ignore=true;   
        }else{   
            this.ignore=false;   
        }   
    }   
  
    protected String getEncoding(){   
        return this.encoding;   
    }   
}

 

 

 

 

分享到:
评论

相关推荐

    java中文乱码解决方案

    ### Java中文乱码解决方案 #### 一、Struts2中的乱码问题及解决方案 在Java Web开发中,尤其是使用Struts2框架时,经常会遇到中文乱码的问题。这些问题的出现通常与字符编码设置不当有关。下面详细介绍几种有效的...

    java中文乱码解决方案和经验

    ### Java中文乱码解决方案与经验 #### 一、字节与Unicode 在Java中处理文本时,经常会遇到中文乱码的问题。这是因为Java内部使用的是Unicode编码标准,而外部数据源如文件、网络传输等通常使用的是字节流,且可能...

    java中文乱码解决问题

    JAVA 中文乱码解决问题 JAVA 中文乱码问题是开发过程中常见的问题之一,解决这个问题需要了解乱码产生的原因,然后对症下药。下面我们对容易产生乱码问题的场景进行分析,并提出解决方案。 1. 以 POST 方法提交的...

    java乱码解决方案

    java乱码解决方案,在使用eclipse时出现的乱码问题,帮助解决

    Java中文乱码浅析及解决方案

    本文将深入探讨这一问题,并提供相应的解决方案。 首先,我们要理解Java编译器编码与运行环境编码的差异。Windows系统通常使用GBK或GB2312作为默认字符编码,而Linux系统倾向于使用UTF-8。如果Java程序在Windows...

    java中文乱码

    Java 中文乱码解决方案 Java 中文乱码是指在 Java 应用程序中,中文字符在传输、存储和显示过程中出现的乱码问题。这种问题可能会出现在 Java 与数据库、JSP、文件流之间的数据交换过程中。本文将总结 Java 中文...

    Java读取TXT文本文件乱码解决方案.doc

    Java 读取 TXT 文本文件乱码解决方案中,主要讨论的是在 Java 中读取 TXT 文本文件时出现乱码的问题,并提供了解决方案。 首先,文章中提供了一个简单的读取 TXT 文件的代码,使用 BufferedReader 和 FileReader ...

    Ajax中文乱码问题解决方案

    在IT行业中,Ajax(Asynchronous JavaScript ...通过理解和应用这些解决方案,开发者可以有效地避免和解决Ajax请求中的中文乱码问题,从而提高用户体验。记住,良好的编码习惯和对字符编码的理解是解决此类问题的关键。

    java中文乱码问题处理方案.docx

    java 中文乱码问题的解决方案是多种多样的,但只有当我们了解了 java 系统的中文问题原理,才能对中文问题采取根本的解决之道。 java 系统的中文问题解决方案包括使用 String 的字节码转换、对 J2EE 容器进行编码...

    java Socket与C#通信中中文乱码问题的解决方案

    总结起来,解决Java Socket与C#通信中中文乱码问题的关键在于: 1. **客户端**:确保使用`getBytes("UTF-8")`将字符串编码为UTF-8字节数组,然后通过Socket发送。 2. **服务器端**:在接收到数据后,使用`Encoding....

    java中MySQL中文乱码问题解决方案

    Java 中 MySQL 中文乱码问题解决方案 Java 中 MySQL 中文乱码问题是数据库开发中常见的问题之一,解决这个问题需要对数据库、JSP 和 Tomcat 进行相应的设置。下面我们将详细介绍解决该问题的方案。 数据库编码修改...

    java传输乱码解决方案

    支持前台传输到后台代码乱码的方案处理,希望能帮到你们,谢谢!

    JAVA/JSP中文乱码解决方案总结

    解决乱码的各种方法总结,包括数据库的解决方案,个人觉得比较详细有使用价值

    网页获取JSON中文返回乱码解决方案(java)

    懒得考虑各种字符编码问题了,用了一个比较暴力的方法,不只中文,所有双字节文字都可以避免乱码问题。

    jsq+mybatis+mysql中文乱码解决方案

    JSQ+MyBatis+MySQL 中文乱码解决方案 中文乱码是 JSQ、MyBatis 和 MySQL 集成时常见的问题,解决这个问题需要从多方面入手。本文将从 JSP、MyBatis 和 MySQL 三个方面来解决中文乱码问题。 JSP 中文乱码解决方案 ...

    java中文乱码问题详解--- java中文乱码问题详解

    针对上述原因,我们可以采取以下措施来解决Java中文乱码问题: 1. **统一编码格式**:确保开发环境中所有相关的编码设置都使用统一的标准,如UTF-8。这包括文件保存时的编码、编译器的编码设置以及JVM的默认字符集...

    java读取远程网页乱码解决方案

    本文将深入探讨这个问题,提供有效的解决方案,确保正确地读取和处理远程网页的字符编码。 首先,理解网页编码至关重要。网页通常使用UTF-8、GBK等字符集编码,Java在读取时必须识别并匹配这种编码,才能正确解析...

    Java乱码解决方案

    以下是一些关于Java乱码解决方案的关键知识点: 1. **字符编码基础**:首先要理解的是字符编码,如ASCII、GBK、UTF-8等。ASCII只支持英文字符,GBK是中国常用的扩展GBK编码,而UTF-8是通用的多字节编码,能支持全...

    java插入mysql中文乱码解决

    ### Java插入MySQL中文乱码解决 #### 一、问题背景 在使用Java应用程序与MySQL数据库交互的过程中,常常会遇到一个令人头疼的问题:中文字符在存储到数据库时出现乱码现象。这种现象通常发生在使用JDBC(Java ...

Global site tag (gtag.js) - Google Analytics