㈠ java程序中文汉字会乱码
首先要加一个utf-8过滤器以过滤post提交乱码问题;
再在tomcat的server.xml文件中配置<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="utf-8"/>
处理get提交乱码问题;
注意在用了这2个配置后就不要再在程序中用getBytes对参数进行转码了
㈡ java中显示数据库内容时,关于中文的是乱码,我已经把两种编码都设为了UTF-8,但是还是显示不了。跪求高手
java使用中文用的的是Unicode,不是udf8,你仅是将网页和数据库编码设置为UDF8是没有用的
本来用udf8表示中文就是一堆乱码的,
取出显示时需要重新转换。
㈢ 在java中怎样处理中文乱码的问题(有几种处理方式)
读取文件的时候如果是用的read方法(字节流),碰到中文输出就是乱码,然后存储的时候设置下编码为GBK或者是UTF-8形式即可,可以有效的解决乱码问题。
可以通过BufferedReader 流的形式进行流缓存,之后通过readLine方法获取到缓存的内容。
BufferedReader bre = null;
try {
String file = "D:/test/test.txt";
bre = new BufferedReader(new FileReader(file));//此时获取到的bre就是整个文件的缓存流
while ((str = bre.readLine())!= null) // 判断最后一行不存在,为空结束循环
{
System.out.println(str);//原样输出读到的内容
};
备注: 流用完之后必须close掉,如上面的就应该是:bre.close(),否则bre流会一直存在,直到程序运行结束。
可以通过“FileOutputStream”创建文件实例,之后过“OutputStreamWriter”流的形式进行存储,举例:
OutputStreamWriter pw = null;//定义一个流
pw = new OutputStreamWriter(new FileOutputStream(“D:/test.txt”),"GBK");//确认流的输出文件和编码格式,此过程创建了“test.txt”实例
pw.write("我是要写入到记事本文件的内容");//将要写入文件的内容,可以多次write
pw.close();//关闭流
备注:文件流用完之后必须及时通过close方法关闭,否则会一直处于打开状态,直至程序停止,增加系统负担。
㈣ java 接受utf8乱码问题
将获取的url定义成字符串str
str = new String( str.getBytes( "utf-8" ), "gbk");
㈤ java控制台中文输出乱码,已经注意文件格式和控制台格式了
不要用系统写字板notepad保存UTF8的Java源文件。M$的UTF8是UTF8withBOM,而Java编译器识别的UTF8是UTF8withoutBOM,两者不兼容。
换个支持代码高亮的文本/代码编辑器如notepad3, Ms vs code.
㈥ 如何解决Java中的中文乱码问题
对于Java,由于默认的编码方式是UNICODE,所以用中文也易出问题,常见的解决是:
String s2 = new String(s1.getBytes(“ISO-8859-1”),”GBK”);
1、utf8解决JSP中文乱码问题
一般说来在每个页面的开始处,加入:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%
request.setCharacterEncoding("UTF-8");
%>
◆charset=UTF-8的作用是指定JSP向客户端输出的编码方式为“UTF-8”;
◆pageEncoding="UTF-8",为了让JSP引擎能正确地解码含有中文字符的JSP页面,这在LINUX中很有效;
◆request.setCharacterEncoding("UTF-8");是对请求进行了中文编码。
有时,这样仍不能解决问题,还需要这样处理一下:
String msg = request.getParameter("message");
String str=new String(msg.getBytes("ISO-8859-1"),"UTF-8");
out.println(st);
㈦ java数据库中文乱码怎么解决
原因1:mysql数据库中的数据本身就是乱码
解决方案:
设置mysql编码格式
<1>
停掉mysql服务
net
stop
mysql
<2>查询mysql编码格式
mysql>
show
variables
like
'character_set_%';
<3>默认就是瑞典latin1,换成自己的编码,如utf8【gbk】
mysql>set
names
'utf8';
【一般在访问之前执行这个代码就解决问题了】
【它相当于下面的三句指令:】
【set
character_set_client
=
utf8;】
【set
character_set_results
=
utf8;】
【set
character_set_connection
=
utf8;】
<3>
启动mysql服务
net
start
mysql
<4>
验证编码是否正确修改
mysql>
show
variables
like
'character_set_%';
㈧ 运行java带有中文的代码就出现乱码了怎么办
你的黑窗口的编码格式是GBK的,所以你写的java文件也要弄成这个格式,你是用软件
编写的吧?你在新建一个txt粘进去,然后在改为java格式就好了,你可以看看那个关于一些黑窗口格式设置的网页,网上找找,有很多呢
㈨ java utf-8中文乱码
jsp页面未设置字符集为UTF-8 eclipse未设置UTF-8 tomcat未设置utf-8最后,虚拟机中VM-option 未设置-Dfile.encoding=utf-8。