如何避免出现乱码
1、工作空间编码设置
注:如果设置Eclipse初始化文件编码,所有工作空间字符编码与Eclispe所设置编码保持一致。
-Dfile.encoding=utf-8
2
3、JSP页面编码设置
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
1. pageEncoding="UTF-8"
页面编码
2. contentType="text/html; charset=UTF-8"
服务器端响应编码,相当于:response.setCharacterEncoding("UTF-8");
4、数据库编码
5、1. 修改数据库编码
需重新启动服务器,否则配置不起作用
新建数据库以及表采用新的编码. 以前创建的数据库还是采用以前的编码
2. 应用程序和数据库之间数据交互,是通过url指定中间编码进行字符编码转换的
jdbc:mysql://localhost:3306/atcrowdfunding170506?rewriteBatchedStatements=true&useUnicode=true&characterEncoding=utf8
3. 命令行查询数据显示乱码
数据库采用utf8编码,而DOS窗口默认GBK
通过set names GBK将数据库数据转换为GBK编码
DOS窗口显示数据就不再是乱码了
注:这个设置是临时的,只针对于当前窗口有效
6、Java中字符串编码转换:
1. public byte[] getBytes(String charsetName)
字符串对象调用这个方法将字符串转换为二进制数组(将原来编码转换为指定的中间编码)
2. public String(byte bytes[], String charsetName)
将二进制数组数据再转换为字符串(将中间编码的数据再转换为指定的编码)