JSP页面UTF-8格式中文字符串乱码问题解决方法
2015-02-02 14:06
991 查看
JSP页面使用utf8格式保存中文字符串到文件或进行socket传送接收数据时,常常会出现乱码。这里给出了一个解决方法,实践检验行之有效。
0) 页面属性设置
<%@ page import="java.util.*,java.text.*,java.io.*,java.net.*" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ page pageEncoding="UTF-8" %>
<HTML>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
......
</body>
</HTML>
1)保存至文件
指定UTF-8编码格式。
String str = "中文字符串";
FileOutputStream fileout = new FileOutputStream("/home/songchao/message.txt");
OutputStreamWriter osw=new OutputStreamWriter(fileout, "UTF-8");
osw.write(str);
osw.close();
2)通过socket传送
//获取Socket的输出流,用来发送数据到服务端,使用UTF-8编码格式。
String sentmsg = "中文字符串";
Socket socket = new Socket("127.0.0.1", 1024);
socket.setSoTimeout(10000);
PrintWriter writer = new PrintWriter(new OutputStreamWriter(
socket.getOutputStream(), "UTF-8"), true);
writer.println(sentmsg);
3)通过socket接收
//获取Socket的输入流,用来接收从服务端发送过来的数据,使用UTF-8编码
BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream(), "UTF-8"));
String recvmsg= reader.readLine();
4) 解析
Tomcat默认的编码格式是iso-8859-1,不能表示中文字符。这里我们使用UTF-8字符集表示中文。
“page ”指示该页面中代码的字符编码是UTF-8。“head”指示浏览器使用UTF-8格式进行字符显示。
Tomcat进行文件和网络传输操作时,默认使用的编码格式也是iso-8859-1,这里我们指定传输时的编码格式为“UTF-8”。
0) 页面属性设置
<%@ page import="java.util.*,java.text.*,java.io.*,java.net.*" %>
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ page pageEncoding="UTF-8" %>
<HTML>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
......
</body>
</HTML>
1)保存至文件
指定UTF-8编码格式。
String str = "中文字符串";
FileOutputStream fileout = new FileOutputStream("/home/songchao/message.txt");
OutputStreamWriter osw=new OutputStreamWriter(fileout, "UTF-8");
osw.write(str);
osw.close();
2)通过socket传送
//获取Socket的输出流,用来发送数据到服务端,使用UTF-8编码格式。
String sentmsg = "中文字符串";
Socket socket = new Socket("127.0.0.1", 1024);
socket.setSoTimeout(10000);
PrintWriter writer = new PrintWriter(new OutputStreamWriter(
socket.getOutputStream(), "UTF-8"), true);
writer.println(sentmsg);
3)通过socket接收
//获取Socket的输入流,用来接收从服务端发送过来的数据,使用UTF-8编码
BufferedReader reader = new BufferedReader(new InputStreamReader(socket.getInputStream(), "UTF-8"));
String recvmsg= reader.readLine();
4) 解析
Tomcat默认的编码格式是iso-8859-1,不能表示中文字符。这里我们使用UTF-8字符集表示中文。
“page ”指示该页面中代码的字符编码是UTF-8。“head”指示浏览器使用UTF-8格式进行字符显示。
Tomcat进行文件和网络传输操作时,默认使用的编码格式也是iso-8859-1,这里我们指定传输时的编码格式为“UTF-8”。
相关文章推荐
- linux+tomcat struts 2 Jsp页面传值中文乱码问题解决方法
- 使用CInternetSession获取utf-8页面中文乱码问题解决方法
- JSP页面中超链接传递中文参数出现乱码问题解决方法
- jsp页面显示及数据库中文乱码问题解决方法
- JSP页面编码问题研究三(中文字符乱码问题的解决方法)
- 项目以及ide的编码格式都改为utf-8后,页面依旧乱码问题的解决方法
- eclipse下更改jsp页面默认的编码格式,解决中文乱码问题
- 关于jsp页面 title中文乱码问题的解决方法
- MyEclipse 创建jsp页面出现中文乱码问题解决方法
- 关于jsp页面中中文乱码问题的解决方法
- 使用CInternetSession获取utf-8页面中文乱码问题解决方法
- JSP页面中超链接传递中文参数出现乱码问题解决方法
- 对JSP页面传值中文乱码的简单解决方法
- JSP中文乱码问题解决方法小结(代码级)
- javascript通过url向jsp页面传递中文参数乱码解决方法
- 对JSP页面传值中文乱码的简单解决方法(转)
- JSP中文乱码问题解决方法小结
- 对JSP页面传值中文乱码的简单解决方法
- JSP字符中文乱码问题解决方法汇总
- JSP中文乱码问题解决方法详解