JAVA中文乱码之解决方案

1.解决HTML页面的中文问题:为了使HTML页面很好的支持中文,在每个HTML页面的<head>标签内部增加(创建HTML页面自带)

<head>

<meta charset="UTF-8">

<title>Insert title here</title>

</head>

2.解决jsp页面中的中文问题:pageEncoding是jsp文件本身的编码contentType的charset是指服务器发送给客户端时的内容编码(创建jsp自带)

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

3.解决页面数据传输的中文问题:

最佳方法是web.xml采用编码过滤器来解决,设置一个过滤器,把所有的数据都进行转码

<!-- 定义编码过滤器 -->

<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>

</filter>

<filter-mapping>

<filter-name>encodingFilter</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

4.HTTP(post)请求中的中文乱码  在Servlet页面中 添加

response.setCharacterEncoding("UTF-8");(不是太好用,有的浏览器不支持,如谷歌,火狐,QQ.好像360浏览器支持)

plain简单类型

response.setContentType("text/plain;charset=utf-8");

response.setContentType("text/html;charset=utf-8");

response.setContentType("text/jsp;charset=utf-8");

5.HTTP(get)请求中的中文乱码问题:

如果是get,需要获取请求的字符串,然后把整个字符串进行转换,同时需要知道原编码,下例假设为 ISO-8859-1

new String(request.getParamter("param").getBytes("ISO-8859-1","UTF-8");

Mysql数据库中的中文问题:

6.解决Mysql数据库中文问题主要在JDBC驱动的URL上添加:

jdbc:mysql://localhost/test?user=root&password=root&useUnicode=true&characterEncoding=UTF-8

7.解决Oracle中文乱码问题:配置环境变量
NLS_LANG
AMERICAN_AMERICA.ZHS16GBK或者SIMPLIFIED CHINESE_CHINA.ZHS16GBK

8.解决Navicat for MySQL

Navicat连接编码格式改为“Current Windows Codepage”

时间: 2024-11-19 00:51:20

JAVA中文乱码之解决方案的相关文章

Java中文乱码&amp;特殊字符解决方案

Java中文乱码&特殊字符解决方案 相信很多朋友遇到过Java的乱码问题,最近我也在解决一个"使用文本生成图片过程中中文以及特殊字符乱码"的问题:花了我大量时间,Debug了sun.font.sun.awt下面的各种源码,终于搞懂了其机制,解决了目前次问题:现在把问题解决过程给写下来,做个记录,以免以后再次遇到. 遇到的问题 下面是我想要执行的代码(经过极度简化,但是意思没变): 1 public static void main(String[] args) throws I

JSP中文乱码问题解决方案

1.项目工程编码统一采用UTF-8编码 2.JSP页面采用UTF-8编码 <%@ page language="java" import="java.util.*,entity.Student" pageEncoding="UTF-8"%> 3.设置request内置对象采用utf-8编码,防止表单提交产生信息乱码(POST方式提交) request.setCharacterEncoding("utf-8"); 4

在jQuery中Ajax的Post提交中文乱码的解决方案(转)

引言: 在jQuery的Ajax POST请求中,进行请求,其中的中文在后台,显示为乱码,该如何解决呢? 问题的引入: var regid = $('#oregion').combobox('getValue'); //var sname = $('#sname').val(); var sname = encodeURI($('#sname').val(),"UTF-8"); if(regid!=""&&regid!='undefined'){ $

中文乱码问题解决方案

UTF-8编码与GBK,GB2312编码区别 UTF-8:Unicode TransformationFormat-8bit,允许含BOM,但通常不含BOM.是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24为(三个字节)来编码.UTF-8包含全世界所有国家需要用到的字符,是国际编码,通用性强.UTF-8编码的文字可以在各国支持UTF8字符集的浏览器上显示.如,如果是UTF8编码,则在外国人的英文IE上也能显示中文,他们无需下载IE的中文语言支持包. GBK是国家

GDAL在java中乱码问题解决方案

[前序] 首先关于GDAL源码方面,GDAL开源项目源码是使用C++语言所写,通过源码的编译可以生成支持一系列语言如c++/java/php/csharp/perl/python/ruby开发所依赖的第三方包或头文件.GDAL的同时支持不同平台下的编译生成,在Win平台下使用起来出现的问题较多,比如编译时选择不同的编译选项32位或x64位产生出不同的依赖库,还有中文路径.中文读写问题等等. 在使用GDAL在java环境下进行读写数据文件时,遇到java语言读tab数据源出现乱码问题,具体的情况描

Eclipse工程,中文乱码问题解决方案

Eclipse工程,中文乱码问题解决方案 将工程的属性设置为GBK: 如果一个工程家里的时候是按照GBK,而Eclipse默认的编码是UTF-8,所以如果导入的工程是GBK,则可以将工程更改为UTF-8试试: 如果还是不行的话,暂时无法解决,百度无数,基本上都是说编码问题,只是我自己也碰到过更改编码格式为GBK/UTF-8依然解决不了问题的情况.

关于c++与java中文乱码问题分析与解决

关于c++与java中文乱码问题分析与解决 DionysosLai([email protected])  2014/8/1 问题分析: 之所以会出现中文乱码问题,归根结底在于中文的编码与英文的编码方式存在差异. 在java内部是使用16bit的unicode编码(即utf-16)来表示字符串,无论英文还是中文都是2字节. C/C++使用的是原始数据,ascii是一个字节,中文一般是GB2312编码,用2个字节表示一个汉字. Jni内部是使用utf-8编码表示字符串的,utf-8是扁长的unic

文《关于c++与java中文乱码问题分析与解决》中一个bug分析

文<关于c++与java中文乱码问题分析与解决>中一个bug分析 DionysosLai([email protected]) 2014/10/21 在前几篇一博客<关于c++与java中文乱码问题分析与解决>,地址如下:http://blog.csdn.net/dionysos_lai/article/details/38389765.文中详细介绍了c++与java数据传递时,为何会出现中文乱码的原因,并提出了适当的解决方法.方法如下: int CCDirector::GBKTo

java中文乱码解决方法汇总

publicstaticvoidmain(String[]argv){ try{ System.out.println("中文");//1 System.out.println("中文".getBytes());//2 System.out.println("中文".getBytes("GB2312″));//3 System.out.println("中文".getBytes("ISO8859_1″));