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)

jsp上传文件插件

  • 2015-04-30 10:13
  • 55KB
  • 下载

Jsp/Servlet:实现文件上传与下载

Blog: [url]http://zhangjunhd.blog.51cto.com/[/url] 1.客户端上传文件 客户端通过一个Jsp页面,上传文件到服务器,该Jsp页面必须含有File类...

jsp关于文件上传

  • 2013-07-23 15:49
  • 624KB
  • 下载

jsp文件上传

  • 2015-06-19 08:45
  • 35KB
  • 下载

jsp 中文件上传功能

1. 到网上下载两个包 第一个叫做commons-fileupload-1.2.1.jar 第二个叫做commons-io-1.4.jar 首先我们创建一个名为uploadFile.jsp的...

jsp上传文件包

  • 2012-12-11 00:12
  • 14KB
  • 下载

JSP无组件文件上传

jsp+servlet+jquery 用jquery uploadify最新版本实现多文件上传带进度条

//这是script代码 $(document).ready(function() { $('#file_upload').uploadify( { ...

jsp文件上传java驱动包

  • 2011-05-25 17:15
  • 14KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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