
类型: 教育学习 版本: V7.0
大小: 1,481.1 时间: 2025-11-15





方法一:(之前在页面直接跳转上传时能够解决问题,异步提交上传图片就不能正常了)
1.解决中文乱码:
【1】:首先上传页面和接收页面都必须制定编码格式为GBK;
<%@pagelanguage="java"import="java.util.*"pageEncoding="GBK"%>
【2】:在上传页面要response.setCharacterEncoding("GBK");
【3】:在接收页面要request.setCharacterEncoding("GBK");
【4】:注意上传时表单要指定编码为:enctype="multipart/form-data"
【5】:注意上传时表单要指定方法为:method="post"
方法二:(异步提交表单能正常解决)
【1】上传页面:(对参数做一次encodeURI)js
//对表单中的中文区域值得获取并进行转码
varname= parent.window.$("#tabs_name").val();
vardirection= parent.window.$("#tabs_direction").val();
parent.window.$("#tabs_name").val(encodeURI(name));
parent.window.$("#tabs_direction").val(encodeURI(direction));
parent.window.$('#subject_modify').submit(); //提交表单
【2】接收参数页面(对参数做一次URLDecoder)
Stringname=smart.getRequest().getParameter("name");
name=URLDecoder.decode(name,"utf-8");
jspsmartupload.jar是一款针对jsp开发的上传下载组件,现在已经完美支持中文名字文件的上传下载工作。该插件使用很简单,能全程控制上传,还能对文件大小、类型等等方面做出限制,轻松过滤掉不符合要求的文件。需要的朋友下载试试吧!凉风图片压缩工具最新版
smartupload使用方法

如果想让Tomcat服务器的所有Web应用程序都能用它,必须做如下工作:
1.进入命令行状态,将目录切换到Tomcat的webapps/jspsmartupload/WEB-INF目录下。
2.运行JAR打包命令:jarcvfjspSmartUpload.jarcom,也可以打开资源管理器,切换到当前目录,用WinZip将com目录下的所有文件压缩成jspSmartUpload.zip,然后将jspSmartUpload.zip换名为jspSmartUpload.jar文件即可。
3.将jspSmartUpload.jar拷贝到Tomcat的shared/lib目录下。
上传相关代码
uploadFile.jsp
<%@pagecontentType="text/html;charset=GB2312"%>
<formmethod="post"action="doUpload.jsp"enctype="multipart/form-data">
<tablewidth="315"border="0">
<tr>
<tdwidth="309"align="center"><inputtype="file"name="file1"size="30"></td>
</tr>
<tr>
<tdalign="center"><inputtype="file"name="file2"size="30"></td>
<tr>
<tdalign="center"><inputtype="submit"name="Submit"value="上传"></td>
</tr>
</table>
</form>
doUpload.jsp
<%@pagecontentType="text/html;charset=gbk"
import="java.util.*,com.jspsmart.upload.*"%>
<html>
<head>
<title>文件上传处理页面</title>
<metahttp-equiv="Content-Type"content="text/html;charset=gbk">
</head>
<body>
<%
//新建一个SmartUpload对象
SmartUploadsu=newSmartUpload();
//上传初始化
su.initialize(pageContext);
//设定上传限制
//1.限制每个上传文件的最大长度。
//su.setMaxFileSize(10000);
//2.限制总上传数据的长度。
//su.setTotalMaxFileSize(20000);
//3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt文件。
//su.setAllowedFilesList("doc,txt");
//4.设定禁止上传的文件(通过扩展名限制),禁止上传带有exe,bat,jsp,htm,html扩展名的文件和没有
//扩展名的文件。
//su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
//上传文件
su.upload();
//将上传文件全部保存到指定目录,需要先在在Web应用的根目录下,创建一个upload目录
intcount=su.save("/upload");
out.println(count+"个文件上传成功!<br>");
//利用Request对象获取参数之值
out.println("TEST="+su.getRequest().getParameter("TEST")
+"<BR><BR>");
//逐一提取上传文件信息,同时可保存文件。
for(inti=0;i<su.getFiles().getCount();i++)
{
com.jspsmart.upload.Filefile=su.getFiles().getFile(i);
//若文件不存在则继续
if(file.isMissing())continue;
//显示当前文件信息
out.println("<TABLEBORDER=1>");
out.println("<TR><TD>表单项名(FieldName)</TD><TD>"
+file.getFieldName()+"</TD></TR>");
out.println("<TR><TD>文件长度(Size)</TD><TD>"+
file.getSize()+"</TD></TR>");
out.println("<TR><TD>文件名(FileName)</TD><TD>"
+file.getFileName()+"</TD></TR>");
out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>"
+file.getFileExt()+"</TD></TR>");
out.println("<TR><TD>文件全名(FilePathName)</TD><TD>"
+file.getFilePathName()+"</TD></TR>");
out.println("</TABLE><BR>");
//将文件另存
//file.saveAs("/upload/"+myFile.getFileName());
//另存到以WEB应用程序的根目录为文件根目录的目录下
//file.saveAs("/upload/"+myFile.getFileName(),su.SAVE_VIRTUAL);
//另存到操作系统的根目录为文件根目录的目录下
//file.saveAs("c:\temp\"+myFile.getFileName(),su.SAVE_PHYSICAL);
}
%>
</body>
</html>
下载相关代码
download.jsp
<%@pagecontentType="text/html;charset=gb2312"%>
<html>
<head>
<title>下载</title>
</head>
<body>
<ahref="do_download.jsp">点击下载</a>
</body>
</html>
do_download.jsp
<%@pagecontentType="text/html;charset=gb2312"
import="com.jspsmart.upload.*"%>
<%
//新建一个SmartUpload对象
SmartUploadsu=newSmartUpload();
//初始化
su.initialize(pageContext);
//设定contentDisposition为null以禁止浏览器自动打开文件,
//保证点击链接后是下载文件。若不设定,则下载的文件扩展名为doc时,浏览器将自动用word打开它。
//扩展名为pdf时,浏览器将用acrobat打开。
su.setContentDisposition(null);
//下载文件,保证Web应用下的upload目录下有测试文档.doc文件。
su.downloadFile("/upload/测试文档.doc");
%>
注意:jspSmartUpload编写下载文件代码时,若下载的文件名中有汉字,则浏览器在提示另存的文件名时,显示的是一堆乱码。为了给jspSmartUpload组件增加下载中文文件的支持,对返回给浏览器的另存文件名进行UTF-8编码后,浏览器便能正确显示中文名字了。在SmartUpload.java文件中,增加的方法如下:
publicstaticStringtoUtfString(Strings){
StringBuffersb=newStringBuffer();
for(inti=0;i<s.length();i++){
charc=s.charAt(i);
if(c>=0&&c<=255){
sb.append(c);
}else
{
byte[]b;
try{
b=Character.toString(c).getBytes("utf-8");
}catch(Exceptionex){
System.out.println(ex);
b=newbyte[0];
}
for(intj=0;j<b.length;j++){
intk=b[j];
if(k<0)k+=256;
sb.append("%"+Integer.toHexString(k).toUpperCase());
}
}
}
returnsb.toString();
}
将文件名转换为UTF-8形式的编码形式。UTF-8编码对英文未作任何处理,对中文则需要转换为%XX的形式。toUtf8String方法中,直接利用Java语言提供的编码转换方法获得汉字字符的UTF-8编码,之后将其转换为%XX的形式。
修改getFileName()方法如下,使其调用toUftString()方法
privateStringgetFileName(Strings){
inti=0;
Strings1=toUtfString(s);
i=s1.lastIndexOf('/');
if(i!=-1){
returns1.substring(i+1,s1.length());
}
i=s1.lastIndexOf('\');
if(i!=-1){
returns1.substring(i+1,s1.length());
}else{
returns1;
}
}
1、使用简单。在JSP文件中仅仅书写三五行java代码就可以搞定文件的上传或下载,方便。
2、能全程控制上传。利用jspSmartUpload组件提供的对象及其操作方法,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等),方便存取。
3、能对上传的文件在大小、类型等方面做出限制。如此可以滤掉不符合要求的文件。
4、下载灵活。仅写两行代码,就能把Web服务器变成文件服务器。不管文件在Web服务器的目录下或在其它任何目录下,都可以利用jspSmartUpload进行下载。
中国体育的 欧博平台开户 博彩公司米高梅 家和网家博会 彩乐乐双色球
山东一卡通下载-山东一卡通app1.0 安卓官方版
649.8M
山东一卡通app是山东省推出的一卡通服务app,很多山东用户都在使用,包括加油,高速,超市,公交等等都可以刷卡,十分方便,再也不用担心一次性带那么多卡在身上了!...
未知文章
1,441.9M
...
巴士驾驶俱乐部游戏下载-巴士驾驶俱乐部(Bus Drivers Club)1.0 安卓版
1,477.4M
巴士驾驶俱乐部游戏中玩家将会驾驶各种不同的巴士进行挑战,在这里你将会体验到驾驶巴士的乐趣,多种多样的驾驶玩法,展现自己的驾驶操作,并且还要不断的熟练自己的操作。...
S1同步软件Lezone官方下载-S1同步软件Lezone(联想数据管理软件)1.1.0 官方免费版【内含使用教程】
913.2M
想更好的管理好你的手机上以及pad上的各种数据的话,现在就可以免费的来下载下面的这款联想数据管理软件,这里有你需要的各种各样的功能,绝对是不错的!S1同步软件L...
小视秀手机视频制作专家-小视秀app2.1.83 安卓最新版
1,720.2M
小视秀app,一款手机上的视频制作专家,内置海量长、短模板,更简单方便、快速的制作视频,支持分段制作,支持加水印制作,做出的视频还能赚钱,有兴趣的欢迎下载体验!...
星球大战共和国武士修改器-星球大战共和国武士2存档修改器3.3 绿色免费版
508.4M
星球大战共和国武士2存档修改器V3.3.3语言为英文,修改后可以随意地修改存档,让你轻松地进行游戏,喜欢这个游戏的欢迎来东坡下载哦。星球大战共和国武士2存档修改...
买不起的房产模拟器游戏下载-买不起的房产模拟器游戏1.0.1 安卓版
1,734.7M
买不起的房产模拟器,模拟买房租房的小游戏。一款画风可爱,游玩轻松的模拟经营游戏。在这你可以一手建造只属于自己的物业大楼,引入多家知名企业,狂赚一笔,购买豪车豪宅...
海大新闻app最新下载-海大新闻app2.3.0安卓版
1,426.7M
海大新闻安卓版是一款专为大连海事大学打造的新闻阅读应用,里面包括了校园新闻网所有内容的搬运,您现在可在手机上实时追踪校园动态!海大新闻app更新内容1、优化了界...
2017法宣在线考试题库-2017法宣在线考试题库软件2.5.2 ios苹果版
552.8M
2017法宣在线考试是国家工作人员都需要学习并参加的考试平台,小编为您带来了2017法宣在线考试题库,还有专业的学习软件,帮助你轻松通过考试!2017法宣在线考...
折对不亏官方APP下载-折对不亏1.0.25916 最新版
1,171.1M
折对不亏APP是一款专注于手游玩家需求的游戏辅助类平台,核心定位为“变态版、高福利手游垂直聚合工具”,通过整合GM版、BT版、无限资源版等特色手游资源,结合独家...
jdk 8u162 x64位下载-JavaSE开发工具包8u162官方版【64bit】
40.2M
jdk8u162是一款java开发工具,用于构建应用程序,applet程序,和使用Java编程语言的组成部分,包含了java运行环境,java工具个java基础...
集原美手机高清壁纸下载-集原美4k超清免费壁纸原版无水印
906.5M
集原美4k超清免费壁纸是最近在抖音上非常火爆的动漫任务形象,不仅造型非常百变,还超级可爱,小编给大家带来了集原美4k超清壁纸资源。集原美4k超清免费壁纸亮点1....
快捷下载软件下载-快捷下载app1.0.0 安卓版
157.9M
快捷下载是一款便捷的手机下载工具,在这款软件中,大家可以下载视频音频、图片、文档等等各种内容。只需要复制图片链接,就能自动下载,固定的存储位置,轻松下载。快捷下...
前店后厂采购-前店后厂(批发商城)4.4.5 安卓版【商家采购app】
42.2M
前店后厂为你提供网上在线购物,可以大量批发,直接从货源采购,减小成本,大大提高了商品的利润空间,给商家极大的实惠!前店后厂软件说明前店后厂是一款网上批发商城,在...
刷访问量助手app下载-qq空间刷人气(刷访问量神器)2.1.0 安卓手机版
1,554.9M
刷访问量助手是一款小巧的刷量工具,输入链接就能开始刷量,操作十分便捷,可实现静默刷取、网页刷取等功能,深受广大用户的喜爱。刷访问量助手使用教程首先输入需要刷的链...
青松画图app下载-青松画图软件1.7.1 安卓免费版
2025/10/30 14:16
NBA范特西篮球经理安卓版下载-NBA范特西篮球经理2022最新版12.6 正版
2025/11/18 11:33
声音转文字app下载-声音转文字app1.1.7 安卓版
2025/10/26 01:52
反恐计划对峙安卓版-反恐计划对峙1.2.0 安卓最新版
2025/10/27 00:25
剑侠逍遥游戏考拉礼包版下载-剑侠逍遥游戏考拉版2.2.0新服版
2025/11/08 01:24
狂野西部牛仔骑马手游下载-狂野西部牛仔骑马(Horse Riding Simulator 2020)v1.03 安卓版
2025/10/24 16:47
宠驭app下载-宠驭1.0.0 官方安卓版
2025/11/06 22:16
惠鲸喜app下载-惠鲸喜app1.0.0 安卓手机版
2025/10/27 01:55
Dalgona过滤器app1.0 手机最新版
2025/11/15 19:00
旗帜的传说v1.0六项修改器[MrAntiFun]
2025/11/06 04:09
元猿游戏下载-元猿Meta Apes游戏0.63.0 安卓版
2025/11/14 08:04
生日提醒2.3 安卓最新版
2025/10/29 18:30
单身狗表白-七夕单身狗表白攻略免费word版
2025/10/31 00:03
黑洞吞噬大冒险下载-黑洞吞噬大冒险游戏1.0.1 安卓版
2025/10/27 10:13
士博教育网校苹果版下载-士博网校ios版(教师资格证考试题库)1.2.01 官网最新iphone版
2025/11/02 01:21
士博教育网校苹果版下载-士博网校ios版(教师资格证考试题库)1.2.01 官网最新iphone版
2025/11/02 01:21更新
士博网校是专门为同学们备考教师资格证的,这里我们小编为大家带来这个士博网校ios版下载,官方的手机客户点,苹果用户们可以来下载,海量的复习重点以及教师资格证考试...
支持 ( 142 ) 盖楼(回复)
支持 ( 116 ) 盖楼(回复)
支持 ( 93 ) 盖楼(回复)
支持 ( 45 ) 盖楼(回复)
支持 ( 27 ) 盖楼(回复)
支持 ( 153 ) 盖楼(回复)
支持 ( 88 ) 盖楼(回复)
支持 ( 90 ) 盖楼(回复)
支持 ( 13 ) 盖楼(回复)
支持 ( 138 ) 盖楼(回复)
支持 ( 127 ) 盖楼(回复)
支持 ( 142 ) 盖楼(回复)
支持 ( 35 ) 盖楼(回复)
支持 ( 137 ) 盖楼(回复)
支持 ( 157 ) 盖楼(回复)
支持 ( 178 ) 盖楼(回复)
支持 ( 75 ) 盖楼(回复)
支持 ( 62 ) 盖楼(回复)
支持 ( 26 ) 盖楼(回复)
支持 ( 40 ) 盖楼(回复)