jsp 上传文件

原创 2015年11月21日 15:51:07


将commons-fileupload-1.2.1.jar commons-io-1.4.jar引入项目

上传组件代码

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML >
<html>
  <head>  
    <title>上传文件</title>
  </head> 
  <body>
   	 上传文件程序应用示例
	<form action='action.jsp' method='post' enctype='multipart/form-data'>
		<%-- 类型enctype用multipart/form-data,这样可以把文件中的数据作为流式数据上传,不管是什么文件类型,均可上传。--%>
		请选择要上传的文件
		<input type='file' name='upfile' size='1'>
		<input type='submit' value='提交'>
	</form>
  </body>
</html>

接收文件代码

DiskFileUpload fu = new DiskFileUpload();	
			//   设置最大文件尺寸,这里是4MB		
			 fu.setSizeMax(4194304);
			//   设置缓冲区大小,这里是4kb
   			fu.setSizeThreshold(4096);
			//   设置临时目录:
  			 fu.setRepositoryPath(tempPath);
			//   得到所有的文件:
			List list=fu.parseRequest(request);
			FileItem f=(FileItem)list.get(0);
DiskFileUpload类会抛出异常,所以必须用try代码块包起来,fu.parseRequest(request)返回的是List类型,不能用File类型接收,从List中读取文件时,最好也不用File类,而是用FileItem类,用前者我无法用getName()读出文件名,对其它没有深究,而FileItem是专门用来接收从表单传过来的文件的,所以最好用它读文件。

当文件大小超过最大尺寸时,异常会被抛出,当大小超过缓冲区尺寸时,会将文件暂时存在临时目录中

File des=new File("e:temp/img/"+x+".jpg");
f.write(des);

可以将上传的文件写进硬盘。

    完整代码:

<%@ page language="java" import="java.util.*,java.io.*" pageEncoding="utf-8"%>
<%@ page import="org.apache.commons.fileupload.*"  import="java.io.*"%>
<!DOCTYPE html >
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<title>接收文件</title>
	</head>
	<body>
		<%		
			out.println("接收文件<br/>");
			String tempPath="e:/temp";
			try{
				DiskFileUpload fu = new DiskFileUpload();	
			//   设置最大文件尺寸,这里是4MB		
			 fu.setSizeMax(4194304);
			//   设置缓冲区大小,这里是20kb
   			fu.setSizeThreshold(20480);
			//   设置临时目录:
  			 fu.setRepositoryPath(tempPath);
			//   得到所有的文件:
			List list=fu.parseRequest(request);
			//out.println("1<br/>");
			FileItem f=(FileItem)list.get(0);
			//out.println("2<br/>");
			String str="空";			
			str=f.getName();
			out.println(str);
			Random r=new Random();
			int x=r.nextInt();
			File des=new File("e:temp/img/"+x+".jpg");
			f.write(des);
			}catch(Exception e)
			{
				out.println("文件过大");
			} 			
		 %>
	</body>
</html>





版权声明:本文为博主原创文章,未经博主允许不得转载。

上传文件(jsp)

  • 2015年10月12日 13:56
  • 2KB
  • 下载

jsp关于文件上传

  • 2013年07月23日 15:49
  • 625KB
  • 下载

【Jsp】使用jspsmartupload完成简单的文件上传系统

请不要妄想,一个html的file控件,再加上javascript与jquery语句就可以完成文件上传, 文件上传系统从来是需要配合服务器来完成的 用户把自己的文件上传到服务器上 文件上传系统是...

jsp文件上传

  • 2015年06月19日 08:45
  • 35KB
  • 下载

JSP无组件文件上传

  • 2010年09月07日 22:25
  • 2KB
  • 下载

flex +jsp 文件上传

upload.mxml     import flash.net.FileReference;  import flas
  • wzj_119
  • wzj_119
  • 2011年01月13日 12:24
  • 933

jsp文件上传java驱动包

  • 2011年05月25日 17:15
  • 14KB
  • 下载

jsp学习资料文件上传功能实现

  • 2011年05月19日 23:21
  • 8KB
  • 下载

ewebeditor上传文件大小及在线编辑器jsp版使用心得

做项目大家都少不了要跟html在线编辑器打交道,这里我把我的一些使用经验及遇到的问题发出来和大家交流一下。 Ewebeditor使用说明: 一、部署方式: 1、直接把压缩目录中的文件拷贝到您的网...
  • JellyLv
  • JellyLv
  • 2015年09月22日 16:21
  • 1297

jsp上传文件教程

  • 2007年04月05日 12:51
  • 13KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:jsp 上传文件
举报原因:
原因补充:

(最多只允许输入30个字)