手机
当前位置:查字典教程网 >编程开发 >JSP教程 >jsp文件上传与下载实例代码
jsp文件上传与下载实例代码
摘要:文件上传:复制代码代码如下:publicclassUploadServletextendsHttpServlet{@Overrideprot...

文件上传:

复制代码 代码如下:

public class UploadServlet extends HttpServlet{

@Override

protected void doGet(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

doPost(req, resp);

}

@Override

protected void doPost(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

SmartUpload myupload = new SmartUpload();

ServletConfig config = getServletConfig();

myupload.initialize(config,req,resp);

resp.setContentType("text/html");

resp.setCharacterEncoding("utf-8");

PrintWriter out = resp.getWriter();

out.println("<h2>处理上传的文件</h2>");

out.println("<hr>");

try {

myupload.setMaxFileSize(1024*1024);

myupload.setTotalMaxFileSize(5*1024*1024);

myupload.setAllowedFilesList("doc,txt,jpg,gif");

myupload.setDeniedFilesList("exe,bat,jsp,htm,html");

myupload.upload();//上传文件,此项是必须的

int count = myupload.getFiles().getCount();

Request myRequest = myupload.getRequest();

String rndFilename,fileExtName,fileName,filePathName;

Date dt = null;

SimpleDateFormat fmt = new SimpleDateFormat("yyyyMMdd");

//一一提取上传文件信息,同时可保持文件

for(int i = 0; i < count; i++){

File file = myupload.getFiles().getFile(i);

if(file.isMissing())

continue;

fileName = new String(file.getFileName().getBytes(),"utf-8");//获取文件名

filePathName = new String(file.getFilePathName().getBytes(),"utf-8");

fileExtName = file.getFileExt();

dt = new Date(System.currentTimeMillis());

Thread.sleep(100);

rndFilename = fmt.format(dt)+i+"."+fileExtName;

out.println("第"+(i+1)+"个文件的文件信息:<br>");

out.println(" 文件名为:"+fileName+"<br>");

out.println(" 文件扩展名为:"+fileExtName+"<br>");

out.println(" 文件全名:"+filePathName+"<br>");

out.println(" 文件大小:"+file.getSize()/1024+"kb<br>");

//创建文件保存位置

ServletContext context = req.getServletContext();

String savePath = context.getRealPath("/upload/");

java.io.File folder = new java.io.File(savePath);

if(!folder.exists()){

folder.mkdirs();

}

out.println(" 文件保存路径:"+savePath);

file.saveAs(savePath+"/"+rndFilename,SmartUpload.SAVE_PHYSICAL);

}

} catch (Exception e) {

out.println("文件上传失败!!!!");

e.printStackTrace();

}

out.flush();

out.close();

}

}

复制代码 代码如下:

<%@ page language="java" contentType="text/html; charset=UTF-8"

pageEncoding="UTF-8"%>

<%@ page import="com.jspsmart.upload.*" %>

<%

//设定请求编码方式,否则遇到中文就会乱码

request.setCharacterEncoding("utf-8");

%>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>上传文件实例</title>

<script type="text/javascript" src="js/jquery-1.8.1.js"></script>

<script type="text/javascript">

$(function(){

$("#number").change(function(){

var number = $("#number").attr("value");

$("#files").html("");

for(var i = 0; i < number; i++){

$("#files").append("<input type='file' name='file''"+i+"'><br/>");

}

});

});

</script>

</head>

<body>

<h2>上传文件实例</h2>

请选择上传文件数量:

<select id="number">

<option value="1" selected="selected">1</option>

<option value="2">2</option>

<option value="3">3</option>

<option value="4">4</option>

<option value="5">5</option>

</select>

<form action="UploadServlet" method="post" enctype="multipart/form-data">

<div id="files"></div>

<input type="submit" value="提交"/>

</form>

</body>

</html>

文件下载:

复制代码 代码如下:

<%

response.setContentType("application/x-download");//设置为下载application/x-download

String filedownload = "/要下载的文件名";//即将下载的文件的相对路径

String filedisplay = "最终要显示给用户的保存文件名";//下载文件时显示的文件保存名称

String filenamedisplay = URLEncoder.encode(filedisplay,"UTF-8");

response.addHeader("Content-Disposition","attachment;filename=" + filedisplay);

try

{

RequestDispatcher dis = application.getRequestDispatcher(filedownload);

if(dis!= null)

{

dis.forward(request,response);

}

response.flushBuffer();

}

catch(Exception e)

{

e.printStackTrace();

}

finally

{

}

%>

【jsp文件上传与下载实例代码】相关文章:

XStream使用方法总结附实例代码

jsp SmartUpload 实现上传功能代码

JSP读取文件实例

jsp include文件时的一个乱码解决方法

JSP上传文件到指定位置

jsp文件怎么打开?

一个jdbc 测试程序代码

用简单的代码来实现文件上传

JSP 多个文件打包下载代码

jsp计数器代码

精品推荐
分类导航