`
isiqi
  • 浏览: 16498020 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

uplaod文件例子

阅读更多

要有commons-fileupload-1.1.1.jar和commons-io-1.1.jar包

//post.jsp

<%@ page language="java" contentType="text/html; charset=gbk"
pageEncoding="gbk"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk">
<title>上传页面</title>
</head>
<body>
<form name="Webform" action="upload.jsp" method="post" enctype="multipart/form-data">
输入你的名字:<br/>
<input type="text" name="name" size="15" value="张月"/><br />
图形:<br />
<input type="file" name="myimage"><br/>
文件:<br />
<input type="file" name="myfile"><br /><br />
<input type="submit" name="Submit" value="Submit your files"/>
</form>
</body>
</html>

//upload.jsp

<%@ page language="java" contentType="text/html; charset=gbk"
pageEncoding="gbk"%>
<%@ page import="java.util.*"%>
<%@ page import="java.io.File"%>
<%@ page import="java.text.*"%>

<%@ page import="org.apache.commons.fileupload.FileItem"%>
<%@ page import="org.apache.commons.fileupload.FileItemFactory"%>
<%@ page import="org.apache.commons.fileupload.FileUpload"%>

<%@ page import="org.apache.commons.fileupload.disk.DiskFileItemFactory"%>

<%@ page import="org.apache.commons.fileupload.servlet.ServletFileUpload"%>
<%@ page import="org.apache.commons.fileupload.FileUploadBase"%>
<%@ page import="org.apache.commons.fileupload.FileUploadBase.SizeLimitExceededException"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gbk">
<title>Insert title here</title>
</head>
<body>
<%

// 检查输入请求是否为multipart的表单数据。
boolean isMultipart = ServletFileUpload.isMultipartContent(request);
if(!isMultipart){
out.print("表单数据格式不是multipart/form-data,或者非法提交");
return;
}

DiskFileItemFactory factory = new DiskFileItemFactory();// Create a factory for disk-based file items
factory.setSizeThreshold(102400);// 设置初始化内存,如果上传的文件超过该大小,将不保存到内存,而且硬盘中(单位:byte)
File fileTemp = new File("c:\\temp");// 建立临时目录
fileTemp.mkdir();
%>
<%--
如果上传的文件超过设置内存的大小,将文件保存至该目录,
待文件上传完毕后,自动删除上传的临时文件;
如果多次上传同一个文件,该文件会保存到服务器的临时目录,而不删除
--%>
<%
factory.setRepository(fileTemp);


ServletFileUpload upload = new ServletFileUpload(factory);// 创建文件上传对象
//DiskFileUpload upload = new DiskFileUpload(); //自己的
upload.setSizeMax(102400);// 设置客户端最大上传,-1为无限大(单位:byte)
//upload.setSizeMax(1024000);
//FileUploadBase.SizeLimitExceededException


List items = null;
try {
items = upload.parseRequest(request);// 分析request,并将保存结果至List里
System.out.println(items);
} catch(SizeLimitExceededException e){
out.print("上传的文件超过系统限制(1MB)");
return;
}


Iterator itr = items.iterator();

while(itr.hasNext()) {// 循环处理表单元素
FileItem item = (FileItem) itr.next();
System.out.println("item is: "+item);
if(item.isFormField()) {// 普通的表单
if("name".equals(item.getFieldName())){
String name = item.getFieldName();
System.out.println(name);
String value = item.getString("gbk");
System.out.println(name+ ":=" + value);
}
}
else {// 上传文件
if(item.getSize()!=0){
String filename = item.getName();// 获取文件的客户端上传路径
int i = filename.lastIndexOf("\\");

filename = filename.substring(i+1);// 获取文件名
System.out.println("文件名:"+filename);
System.out.println("Realpath is:"+getServletContext().getRealPath("/"));
//注意:创建File savedFile时,要在getRealPath("/")的目录下创建一个temp的目录,因为它传了getRealPath("/")+"temp"字符串了.
File savedFile = new File(getServletContext().getRealPath("/") + "temp", filename);
//File savedFile = new File("D:\\xpghost", filename);

System.out.println(item);
item.write(savedFile);
out.println("upload success!!!");
System.out.println("upload success!!!");
}
}
}

%>
</body>
</html>

分享到:
评论

相关推荐

    Tp3.2上传图片Upload文件

    // 实例化Upload类 $upload-&gt;maxSize = 3145728; // 设置允许的最大上传文件大小 $upload-&gt;savePath = '/Uploads/'; // 设置上传文件保存路径 $upload-&gt;autoSub = true; // 开启子目录保存 $upload-&gt;subName = ...

    Jquery AjaxUpload实现文件上传实例 PHP版

    在这个“Jquery AjaxUpload实现文件上传实例 PHP版”中,我们将探讨如何使用jQuery的AjaxUpload插件与PHP后端进行配合,实现实时的文件上传功能。 首先,我们需要在HTML页面中创建一个用于选择文件的input元素和一...

    Base64和AjaxUpload上传文件代码实例

    Base64和AjaxUpload上传文件代码实例 Base64和AjaxUpload上传文件代码实例是两种常用的文件上传方式,它们都可以实现文件上传到服务器端,但它们之间有着明显的区别。 Base64上传文件是一种基于文本编码的上传方式...

    upload上传实例

    【标题】"upload上传实例"涉及的是Web应用中文件上传的功能。在开发Web应用程序时,文件上传是一项常见的需求,允许用户将本地计算机上的文件发送到服务器。Eclipse是一款广泛使用的Java集成开发环境(IDE),在这里...

    layui一个页面使用多个文件upload上传按钮

    在页面上使用多个upload按钮,我们需要为每个按钮创建独立的upload实例,这样它们就能各自管理自己的上传行为,互不干扰。 1. **引入layui库** 确保在HTML文件中引入layui的CSS和JS文件。通常,它们位于layui项目的...

    webUpload实例,可直接运行

    这个实例是已经配置好并可以直接运行的,通过解压后打开`test.html`文件,你将能够体验到WebUpload的实际效果。 WebUpload的核心特性包括: 1. **多文件选择**:用户可以一次选择多个文件进行上传,提高了上传效率...

    在单片机上实现http upload 小文件上传

    在单片机上实现HTTP Upload小文件上传是一项技术性较强的工作,主要涉及到嵌入式系统、网络通信协议以及操作系统任务管理等多方面的知识。这里我们将深入探讨如何在单片机环境中,利用C语言和HTTP POST方法来实现这...

    php使用upload封装类上传文件

    在实际应用中,我们可以在控制器或业务逻辑层中实例化Upload类,然后调用其`processUpload()`方法来处理文件上传。例如: ```php if (isset($_FILES['myFile'])) { $upload = new Upload(['jpg', 'png', 'gif'], ...

    ASP文件上传类UpLoadClass2.0

    然后,可以在ASP代码中创建UpLoadClass2.0的实例,并调用其方法来处理上传请求。 例如,以下是一个简单的ASP文件上传示例: ```vbscript Dim Upload Set Upload = Server.CreateObject("UpLoadClass2.0.UpLoad") ...

    jspupload中文实例

    本实例主要讲解如何在JSP应用中使用`jspupload`进行文件上传和下载操作。 首先,我们来看`jspupload`的核心组件——`jsmartcom_zh_CN.jar`。这是一个包含中文支持的jar包,它包含了`jspupload`的所有类和资源文件。...

    webupload demo webuploader实例

    这个"webupload demo webuploader实例"的压缩包很可能是为了展示如何在实际项目中使用WebUploader进行文件上传操作。下面,我们将深入探讨WebUploader的核心功能、工作原理以及如何通过示例来实现文件上传。 1. ...

    aspupload例子,用aspupload组件上传文件的例子

    首先,`EVUploadSample.asp` 是主程序文件,它包含了ASPUpload组件的实例化和使用。在ASP页面中,你需要引用ASPUpload的库文件,通常通过`&lt;%@ Component Language="VBScript" %&gt;`指令引入。然后,创建ASPUpload对象...

    【JavaScript源代码】element-ui中el-upload多文件一次性上传的实现.docx

    在处理文件上传时,Element-UI的`el-upload`组件默认情况下会对每个文件发送单独的上传请求。然而,有时我们需要将多个文件一次性上传,并在同一个请求中发送。下面我们将详细介绍如何使用`el-upload`组件实现这一...

    el-upload多文件一次性上传(携带json),自定义上传事件(手动上传),不使用action属性上传.pdf

    在本文中,我们将深入探讨如何使用`el-upload`组件实现多文件一次性上传,同时携带JSON数据,并自定义上传事件,不依赖`action`属性。`el-upload`是Element UI库中的一个组件,用于文件上传操作,提供了丰富的配置...

    jsp上传文件实例可以使用jsp上传图片,文档,等文件

    本实例主要探讨如何使用JSP来实现文件上传的功能,特别是针对图片、文档等类型的文件。文件上传是一个常用的需求,例如用户在网站上提交个人信息时可能需要上传头像或简历。以下将详细介绍如何使用JSP进行文件上传。...

    php版本upload实例.zip

    这个"php版本upload实例.zip"文件提供了一个示例,帮助开发者理解如何在PHP环境中实现文件上传功能。以下是对该实例的详细解析: 1. **基本原理**: 文件上传在HTML表单中通过`&lt;input type="file"&gt;`元素实现,用户...

    jQuery-File-Upload的例子

    jQuery-File-Upload是一款功能强大的JavaScript文件上传组件,它提供了一种优雅的方式来处理文件上传,支持多文件选择、进度条显示、图片预览等特性,使得文件上传变得更加直观和用户友好。在本文中,我们将深入探讨...

    webupload 例子

    然后,我们需要初始化 WebUploader 实例,配置相应的参数,如服务器接口地址、文件类型限制、最大上传文件大小等。例如: ```html &lt;div id="filePicker"&gt;&lt;/div&gt; 或将文件拖到这里 ...

    FTPUpload上传文件 进度条显示进度

    这个例子中,`ProgressMonitorInputStream`监听文件上传的进度,并通过`update()`方法更新进度条。注意,实际应用中还需要处理可能出现的异常,以及确保在文件传输完成后正确关闭所有资源。 通过以上步骤,你可以在...

Global site tag (gtag.js) - Google Analytics