Jsp中请求通用转码方法:
/**
* 用getBytes(encoding):返回字符串的一个byte数组<br>
* 当b[0]为 63时,应该是转码错误<br>
* A、不乱码的汉字字符串:<br>
* 1、encoding用GB2312时,每byte是负数;<br>
* 2、encoding用ISO8859_1时,b[i]全是63。<br>
* B、乱码的汉字字符串: <br>
* 1、encoding用ISO8859_1时,每byte也是负数;<br>
* 2、encoding用GB2312时,b[i]大部分是63。<br>
* C、英文字符串<br>
* 1、encoding用ISO8859_1和GB2312时,每byte都大于0;
* <p/>
* 总结:给定一个字符串,用getBytes("iso8859_1") <br>
* 1、如果b[i]有63,不用转码; A-2 <br>
* 2、如果b[i]全大于0,那么为英文字符串,不用转码; B-1 <br>
* 3、如果b[i]有小于0的,那么已经乱码,要转码。 C-1
*/
public static String getToGBK(String str) {
if (StringUtils.isBlank(str))
return str;
String retStr = str;
byte b[];
try {
b = str.getBytes("ISO-8859-1");
for (int i = 0; i < b.length; i++) {
byte b1 = b[i];
if (b1 == 63)
break; // 1
else if (b1 > 0)
continue;// 2
else if (b1 < 0) { // 不可能为0,0为字符串结束符
retStr = new String(b, "utf-8");
break;
}
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return retStr;
}
分享到:
相关推荐
本文主要介绍如何在JSP中正确地进行汉字参数的转码与解码,确保数据在页面间传递时保持正确性。 一、转码 在JSP中,当需要将含有汉字的参数通过URL传递时,必须先进行转码,以防止URL中特殊字符或非ASCII字符引起的...
### JSP中处理中文字符及数组的转码与显示 #### 概述 在Web开发过程中,特别是使用Java Server Pages (JSP)进行页面展示时,经常会遇到从表单提交的数据中含有中文的情况。若不进行适当的编码转换处理,可能会导致...
本文将详细阐述在JSP中如何进行汉字参数的转码和解码。 首先,我们需要理解字符编码的基本概念。在Web开发中,常见的字符编码有ASCII、GB2312、GBK、UTF-8等。其中,ASCII只支持英文字符,而GB2312、GBK是中国常用...
7. **视频编码与转码**:不同的设备和浏览器可能支持不同的视频格式,所以视频上传后可能需要进行转码,确保所有用户都能播放。 8. **安全控制**:对视频访问进行权限控制,例如只有登录用户才能观看某些视频,或者...
在请求页面开始处执行请求的编码设置,例如使用`request.setCharacterEncoding("UTF-8")`。 C. 使用过滤器对所有jsp进行编码处理。 3. 表单Get提交方式的乱码处理方式 在使用Get方式提交表单时,如果没有指定...
- 在执行SQL语句时,如果包含中文字符串,确保字符串已正确转码,避免在数据库中存储时乱码。 9. **国际化和本地化** - 使用`<fmt:setLocale>`和`<fmt:setBundle>`标签时,确保资源文件的编码与JSP页面保持一致。...
- **手动转码**:在客户端或者服务器端对请求参数进行转码处理。 服务器端示例: ```java String name = request.getParameter("name"); String name1 = new String(name.getBytes("ISO-8859-1"), "UTF-8");...
综上所述,针对Struts+Ajax+JSP请求到后台的乱码问题,主要的解决方法包括客户端使用encodeURI()函数对参数进行转码以及服务器端正确设置解码字符集。正确处理字符编码是确保Web应用正常运行的关键,开发者需要对此...
在这个实例中,JSP可能用于创建用户界面,展示ueditor编辑器,同时也可以作为与后台交互的桥梁,通过表单提交或者AJAX请求传递数据。 4. 文件上传管理:ueditor支持图片、文件和视频的上传,这意味着后端需要处理...
URL中的参数通常是ASCII编码,包含中文时需要先将其转码为ASCII,然后在服务器端进行解码。在Java中,可以使用`URLEncoder.encode()`和`URLDecoder.decode()`方法进行编码和解码操作。 总的来说,解决Java项目中的...
视频可能经过编码和转码以适应不同浏览器和设备的播放需求。 9. **IE浏览器兼容**:虽然现代浏览器已普遍支持HTML5,但在过去,Internet Explorer(IE)的市场份额较大,因此项目特别强调在IE上的运行。这可能意味...
- **编码与转码**:可能还包括对上传的视频进行编码或转码,以适应FLV格式,确保与Flash Player的兼容性。 - **缓冲与分段**:为了优化用户体验,可能会实现缓冲机制,将大文件分割成小块进行传输,减少加载延迟。 ...
- 视频处理:可能需要对上传的视频进行转码、缩略图生成等操作,以便适应不同网络环境和播放需求。 - 异步处理:使用Ajax进行异步请求,提高用户体验,如无刷新加载更多视频。 通过以上分析,我们可以看出这个JSP...
通常,需要在请求处理阶段就正确地处理字符编码,例如在Servlet或Filter中对请求参数进行转码。 解决JSPSmartUpload上传文件乱码问题的关键在于理解字符编码的流转过程,确保从客户端到服务器端的每个环节都使用...
JSP在后台接收到Ajax请求后,可以使用Java的文件I/O流进行文件存储操作。例如,使用`java.io.File`类创建或修改文件,`java.io.FileInputStream`和`java.io.FileOutputStream`进行读写操作。此外,还可以使用Servlet...
- **使用过滤器**:创建一个全局过滤器,对所有JSP页面的请求进行编码处理,避免在每个页面都添加编码设置。 3. **GET表单提交的乱码处理** GET方式提交中文数据时,由于Tomcat默认使用ISO-8859-1编码URL参数,...
在JSP视频点播系统中,JSP文件主要负责接收用户的请求,显示视频列表,处理播放、暂停、停止等操作,并与后端的Servlet或JavaBean进行交互,完成数据的处理和业务逻辑。 **视频点播系统的关键组件**包括: 1. **...
// 如果前端传递的name是中文,需要进行转码 String decodedName = java.net.URLDecoder.decode(name, "UTF-8"); ``` **应用场景:** - 当表单数据通过GET方式提交时。 - 特别是在前端和服务器端编码不一致的...
在JSP(JavaServer Pages)页面中,通常会涉及到用户输入数据的处理,这些数据可能会包含一些特殊的字符,如空格、引号等。为了确保这些特殊字符能够正确地被服务器端解析,我们需要对这些数据进行URL编码。 **1. ...
总的来说,处理JSP中文乱码问题的关键在于确保编码的一致性,从页面编码、URL编码到请求处理的编码,都需要进行适当的配置和调整。通过理解这些基础知识,开发者可以更有效地解决这类问题,提高开发效率。