1. jsp页面内容显示乱码
这种乱码原因很简单,一般的工具或解码程序对中文字符解析时采用默认的解码方式:
<%@ page contentType="text/html; charset=ISO-8859-1"%>
我们只需修改其编码方式即可,如下:
<%@ page contentType="text/html; charset=UTF-8"%>
字符集:UTF-8 > GBK > GB2312
2. jsp 与 Servlet 间跳转出现中文乱码
2.1: method="Post"
jsp 中form 表单的 ation="XxxServlet",method="Post"时,提交表单后往往发现中文的属性值在 Servlet 中获取后变乱码。
此时需要定位到 doPost() 方法,首先在方法内首行加上如下 code:
request.setCharacterEncoding("UTF-8");
意思是设置 request 的编码为 "UTF-8",一般与 jsp 页面一致
然后,再添加 code:
response.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
意思是设置 response 的编码为 "UTF-8",即 Servlet 回传 jsp 时的编码,上面两段用其一即可,保持一致是关键。
2.2: method="Get"
jsp 中form 表单的 ation="XxxServlet",method="Get"时,提交表单后往往发现中文的属性值在 Servlet 中获取后变乱码。
此时需定位的 tomcat 的安装目录 %TOMCAT%/conf/server.xml 文件
寻找如下代码片段:
1. <Connector port="8080" protocol="HTTP/1.1"
2. maxThreads="150"
3. connectionTimeout="20000"
4. redirectPort="8443"
5. URIEncoding="UTF-8"/>
手动加上URIEncoding="UTF-8"
3. javascript url 传递参数中文乱码问题
方案一
html页面:
function testOne() {
var url = "testTwo.action?expr="+你好;
window.location.href = encodeURI(url);
}
后台java代码:
String expr = new String(
request.getParameter("expr").getBytes("ISO-8859-1"),"UTF-8");
方案二
html页面:
function testTwo() {
var url = "testTwo.action?expr="+你好;
window.location.href= encodeURI(encodeURI(url));
}
后台java代码:
String expr = java.net.URLDecoder.decode(lrequest.getParameter("expr") , "UTF-8");
如果用的是weblogic服务器的话,用方案二是可以解决的(我的weblogic的版本是weblogic 9.2的),方案一解决不了。
如果是tomcat服务器的话,这两个方案都可以;也可以在传递参数不处理,后台用
String expr = new String(request.getParameter("expr").getBytes("ISO-8859-1"),"UTF-8");
也是可以的。
4. Java web下载文件文件名乱码
第一种: 设置
response.setHeader("Content-Disposition", "attachment; filename=" + java.net.URLEncoder.encode(fileName, "UTF-8"));
这里将文件名编码成UTF-8的格式,就不会出现URL出错了。IE6下注意中文文字不能超过超过17个。
第二种:设置
response.setHeader( "Content-Disposition", "attachment;filename=" + new String( fileName.getBytes("gb2312"), "ISO8859-1" ) );
将中文名编码为ISO8859-1的方式。不过该编码只支持简体中文.
按照上诉方式,可以综合一下两种方式解决绝大部分中文问题。
fileName = URLEncoder.encode(fileNameSrc,"UTF-8");
if(fileName.length()>150)//解决IE 6.0 bug {
fileName=new String(fileNameSrc.getBytes("GBK"),"ISO-8859-1");
response.setHeader( "Content-Disposition", "attachment;filename=" + fileName);
}
分享到:
相关推荐
在Java开发过程中,有时我们需要查看或分析已编译的.class文件中的源代码,这就涉及到Java的反编译技术。反编译是将字节码还原为接近原生的源代码的过程,常用工具有JD-GUI,它是一款直观的Java反编译器。然而,当...
本文将详细探讨如何使用Java开发这样的客户端,并解决在处理中文字符时可能出现的乱码问题。 首先,让我们了解Java中的Socket编程。在Java中,`java.net.Socket`类提供了TCP/IP套接字功能,可以用于建立客户端到...
在Java开发过程中,中文乱码问题常常令人头疼,尤其是在Web应用中,客户端提交的数据经常会出现编码不一致导致的乱码问题。本文将介绍几种解决Java中中文乱码的方法,希望能对您有所帮助。 #### 方法一:转换请求...
Java中文乱码问题是Java开发中常见的问题,尤其是在Web开发中,乱码问题会导致页面显示混乱,影响用户体验。解决乱码问题需要了解编码的基本原理和各种编码格式的区别。 编码的原因可以总结为两点:计算机中存储...
在Java开发中,处理中文乱码是一个常见的问题,尤其是在处理Web应用程序时。下面将详细介绍三种处理Java中中文乱码的方法。 方法一:类字符转换 这个方法涉及到将字符串从一种编码格式转换为另一种编码格式。在给...
通过日常的开发实践积累,本篇文章总结了一系列有关中文乱码问题的实例及解决方案,帮助开发者更好地理解和解决实际工作中遇到的相关问题。 #### 二、字符编码概述 在计算机系统中,所有的信息均以二进制形式存储...
中文乱码总结出现的原因及解决方法,包括数据库乱码 中文乱码是一个常见的问题,它可能出现在 Java 和 JSP 文件中,也可能出现在 Java 程序与其他媒介交互时。以下是中文乱码的原因和解决方法: Java 和 JSP 文件...
在IT领域,尤其是在Java开发中,遇到中文乱码问题是相当常见的。这主要涉及到字符编码的处理,如果在数据传输、存储或显示过程中没有正确地指定或转换编码,就容易出现乱码现象。以下是对如何在Java中解决中文乱码...
### Java Web 开发中解决乱码问题的全面指南 #### 一、乱码问题概述 在Java Web开发过程中,乱码问题是开发者经常会遇到的问题之一。它通常发生在处理含有中文或其他非ASCII字符的数据时。本篇文章将详细介绍在...
本篇文章将详细探讨如何在Java中解析CSV文件,并解决中文乱码的问题。 首先,我们需要了解如何使用Java的标准库`java.io`和`java.nio`来读取CSV文件。最常用的是使用`BufferedReader`配合`Scanner`或者`Files.lines...
在Java Web开发中,经常会遇到一个令人头疼的问题:客户端向服务器传递数据时出现乱码。这种情况不仅会影响用户体验,还可能导致程序逻辑错误。本文将深入探讨Java传值中的乱码问题,并提供一种简单有效的解决方案。...
中文乱码问题是 Java 和 JSP 开发中的一种常见问题,主要是由于 Java 和 JSP 源文件的保存方式是基于字节流的,而编译成 class 文件过程中,使用的编码方式与源文件的编码不一致所致。在 Java 文件中,尽量不要写...
在Java Web开发中,经常遇到的一个问题是处理GET请求中的中文参数时出现乱码。这个问题主要是因为浏览器发送GET请求时,参数默认使用ISO-8859-1编码格式,而服务器端通常采用的是其他编码(如GBK、UTF-8等)。当...
在Linux操作系统中,Java应用程序处理中文字符时可能会遇到乱码问题。这主要涉及到编码格式的不匹配,因为Linux系统默认采用UTF-8编码,而某些Java应用或文件可能使用了GB2312、GBK或其他编码。本篇将详细介绍如何...
针对java web开发方面中文乱码情况的总结,基本各种情况都有了!
本文将重点讨论在Java环境下,特别是Web应用开发中遇到的中文乱码问题,并提出相应的解决方案。 #### 二、JSP页面中的乱码处理 1. **JSP页面本身的编码设置** - **问题描述**:JSP页面直接输出中文时可能出现...
总结一下,Java Web中的中文乱码问题主要通过设置正确的字符编码来解决,而过滤器是处理这个问题的一种有效手段。通过创建并配置过滤器,我们可以确保请求和响应的编码一致,从而避免中文乱码的出现。同时,注意整个...
IDEA是一款功能强大的集成开发环境(IDE),但是在使用过程中,中文乱码的问题经常会出现,导致开发过程中的不便。因此,了解如何解决IDEA中文乱码问题变得非常重要。本文将详细介绍解决IDEA中文乱码的方法,包括...
Java 中文乱码总结 Java 中文乱码是指在 Java 应用程序中出现的中文字符显示不正确的问题。这种问题的出现是由于编码方式的不同引起的。下面我们将详细介绍 Java 中文乱码的原因、解决方法和防止乱码的技巧。 一、...