在Web编程中,涉及到两个jsp页面传中文参数时,会出现乱码问题,后台总是打印出许多问号。在网上搜会出来很多答案,大多数都说是改一下jsp页面的编码问题(pageEncoding="utf-8"),但是改过来之后,还是不行。
下面就将我的解决办法分享给大家。
第一种办法:首先新建一个send.jsp页面,代码如下:
<%@ page language="java" pageEncoding="utf-8"%>
<%@ page import="java.net.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
<script type="text/javascript">
function aa(){
document.form1.action="receive.jsp?name="+encodeURI(encodeURI("中国人民大学"));
document.form1.submit();
}
</script>
</head>
<body>
<form name="form1" id="form1" method="post" >
<input type="button" name="button1" id="button1" value="提交" onclick="aa()" /><br>
</form>
</body>
</html>
其次在建一个receive.jsp 代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="java.net.*" %>
<%
String name=URLDecoder.decode(request.getParameter("name"),"utf-8");
System.out.println(name);
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
</body>
</html>
代码黑色部分是核心,这样后台打印出来的就是中文汉字,别忘了导包(java.net.*)。呵呵,祝你好运。
第二种办法是热连接传中文参数时也会出现乱码。下面是我的解决办法:
首先新建send.jsp页面,代码如下:
<%@ page language="java" pageEncoding="utf-8"%>
<%@ page import="java.net.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title></title>
</head>
<body>
<form name="form1" id="form1" method="post">
<a href="receive.jsp?name1=<%=URLEncoder.encode(URLEncoder.encode("中国人民大学","utf-8"),"utf-8") %>" >安扭</a>
</form>
</body>
</html>
其次新建receive.jsp页面,代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="java.net.*"%>
<%
String name1=URLDecoder.decode(request.getParameter("name1"),"utf-8");
System.out.println(name1);
%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
</body>
</html>
注意黑色代码部分,URLEncoder.encode是对中文汉字进行编码,而URLDecoder.decode是对传过来的编码进行解码,这样,中文乱码问题就解决了。呵呵,祝你好运。
分享到:
相关推荐
在Java编程中,乱码问题是开发者经常遇到的一个难题,尤其是在处理中文或者其他非英文字符时。本文将详细介绍如何解决Java编程中常见的乱码问题,并提供具体的实例帮助读者理解。 #### 一、乱码产生的原因 在深入...
Java Web编程页面跳转乱码问题的解决方案 Java Web编程是互联网开发领域中应用十分广泛的工具。然而,在实际开发过程中,程序员常常会遇到页面跳转乱码的问题,尤其是中文乱码问题,这些问题不仅消耗程序员大量的...
为了解决这一问题,首先需要了解Java Web工程字符编码的基本理论,包括字符编码集、编码和解码过程,以及不同编码方式的规则。接下来,将详细探讨这些知识点,并提供相应的解决方案。 Java语言是一种纯面向对象的...
通过日常的开发实践积累,本篇文章总结了一系列有关中文乱码问题的实例及解决方案,帮助开发者更好地理解和解决实际工作中遇到的相关问题。 #### 二、字符编码概述 在计算机系统中,所有的信息均以二进制形式存储...
"解决中文乱码问题" 标题解释 解决中文乱码问题是指在使用C#语言读取txt文件时,遇到中文乱码的问题。这种问题在实际开发中非常常见,特别...在ASP.NET框架中,C#语言可以用于开发Web应用程序,并解决中文乱码问题。
Java环境下Web程序中文乱码问题与对策涉及了计算机编程领域中文字符编码的问题,以及如何在Java开发的Web应用中解决中文乱码问题。以下是对文档内容的详细解读。 1. 字符编码基础: 文档首先介绍了字符编码的基本...
这一问题的核心在于多种字符编码机制的共存。Web页面的乱码问题通常发生在以下几个关键环节:页面显示乱码、参数传递乱码以及数据库读写乱码。这些问题的产生,紧密关联着Web页面的生成流程。 #### 二、多种编码...
在Web开发中,尤其是涉及到Java...总的来说,解决Web项目中的中文乱码问题,关键是确保编码的一致性,并利用适当的编程手段进行转换或设置。对于大型项目,推荐使用过滤器进行全局处理,以减少代码重复并提高可维护性。
### Java中文乱码问题详解 #### 一、中文问题的来源与背景 计算机技术发展初期,操作系统主要支持单字节的ASCII字符集。随着全球化进程加快和技术进步,为支持多种语言,尤其是双字节编码的语言(如中文),提出了...
在进行Java Web开发时,中文乱码问题是一个常见的难题,尤其对于初学者而言,解决编码问题往往耗费大量时间。本文针对Java Web开发中字符编码问题进行探讨,主要围绕字符编码的种类、设置方式以及不同页面类型的代码...
Java编程中中文乱码问题是一个常见的困扰开发者的问题,尤其是在Java Web开发环境中。Java语言本身使用Unicode编码,这是一种全球化的标准,确保了各种字符集的兼容性。然而,Unicode编码在与其他系统交互时,如...
在Java编程中,中文乱码问题是一个常见的困扰,尤其是在处理文件读写、网络传输或数据库操作时。本文将深入探讨几种解决Java中中文乱码问题的方法,并以MyEclipse为开发环境,结合实际示例进行讲解。 1. 文件读写中...
字符乱码问题是Java Web程序开发过程中经常遇到的一个问题,它会对用户界面的友好性以及信息的准确传达造成很大的影响。为了解决这个问题,我们首先要了解字符集和字符编码的相关知识,然后分析字符乱码的原因,并...
在Web开发中,中文字符的乱码问题是一个常见的问题,特别是在使用DOGET和DOPOST请求时。今天,我们将讨论DOGET和DOPOST中文乱码问题的解决方案。 DOGET和DOPOST请求中的中文乱码问题 在使用DOGET和DOPOST请求时,...
在Java编程过程中,经常遇到的一个问题是中文字符的显示出现乱码。这主要是因为不同系统、环境或文件编码方式之间的不一致所导致的。例如,在Java Web开发中,如果服务器端与客户端之间或者数据库连接时使用的字符集...
在Web开发中,中文乱码问题一直是困扰开发者的一大难题。特别是在使用Java技术栈(如Servlet与JSP)进行开发时,如果处理不当,很容易出现中文字符显示乱码的情况。本文将详细介绍如何在Servlet与JSP中彻底解决中文...
Java 乱码问题是 Java 开发中常见的问题之一,解决这个问题需要了解 Java 的编码方式、JSP 中文乱码问题、Tomcat 5.5 中文乱码问题、JDBC ODBC Bridge 的 Bug 及其解决方法、Solaris 下 Servlet 编程的中文问题及...
Java编程中的汉字乱码问题主要源于字符编码的不匹配,这在Java程序处理中文字符时尤其常见。Java语言默认使用Unicode编码,而Unicode是一种广泛接受的、包含多种语言字符的标准编码,旨在解决不同地区和语言的字符...