📄 file.jsp
字号:
<%@ page contentType="text/html;charset=GB2312" language="java" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<%@ page import="org.apache.commons.fileupload.*" %>
<%
// 申明将上传文件放到服务器的 / .... /upload 目录中
String saveDirectory = "c:\\log\\";
// 申明临时目录
String tmpDirectory = "c:\\";
// 申明限制上传文件总大小为, 单位为 byte, -1 表示无限制
int maxPostSize = 1024 * 1024;
%>
<%
// 申明储存叙述上传文件内容的变量
String FileDescription = null;
// 申明储存上传文件名称的变量
String FileName = null;
// 申明储存上传文件大小的变量
long FileSize = 0;
// 申明储存上传文件类型的变量
String ContentType = null;
// 计算上传文件之个数
int count = 0 ;
%>
<%
DiskFileUpload upload = new DiskFileUpload();
// 设置内存存放数据的大小, 超过则写入文件, 有设定临时目录, 临时文件置于临时目录下
upload.setSizeThreshold(4096);
// 设置总上传大小限制
upload.setSizeMax(maxPostSize);
// 设置临时目录
upload.setRepositoryPath(tmpDirectory);
/* FileItem */
List items = upload.parseRequest(request);
%>
<body>
<%
Iterator iter = items.iterator();
int tmp = 0;
FileItem tmpItem = null;
while (iter.hasNext())
{
tmp++;
FileItem item = (FileItem) iter.next();
if (item.isFormField()) {
// 如果是一般栏位, 取得文件叙述
FileDescription = item.getString();
} else {
// 否则取得文件信息
FileName = item.getName();
// 因为不同的浏览器会造成传递 path + filename, 有些则只有 filename
try {
// for wintel platform
FileName = FileName.substring(FileName.lastIndexOf("\\")+1);
// for unix-like platform
FileName = FileName.substring(FileName.lastIndexOf("/")+1);
} catch ( Exception ex ) {
out.println(ex);
}
ContentType = item.getContentType();
FileSize = item.getSize();
tmpItem = item;
}
// 因为一个文件都是两个栏位, 每读取两个栏位处理一次
if (tmp == 2 && FileSize != 0)
{
count ++;
%>
<font color="red">你上传的第<%= count %>个的文件:</font><br>
文件名称为:<%= FileName %><br>
文件大小为:<%= FileSize %> Bytes<br>
文件类型为:<%= ContentType %><br>
文件的叙述:<%= FileDescription %><br><br>
<%
// 将文件写入存档目录
try {
out.println(FileName);
File uploadedFile = new File(saveDirectory + FileName);
tmpItem.write(uploadedFile);
} catch ( Exception ex ) {
out.println(ex);
}
tmp = 0;
} else if (tmp == 2 && FileSize == 0) {
tmp = 0;
} // end if
} // end while
%>
您总共上传<font color="red"><%= count %></font>个文件
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -