表单页<%@ page language="java" contentType="text/html; charset=gb2312"%>
<%@page import="com.AddCookies" %>
<html>
<head><meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>郭帅的电脑e盘</title>
<script language="javascript">
/***
path 要显示值的对象id
****/
function browseFolder(path) {
try {
var Message = "\u8bf7\u9009\u62e9\u6587\u4ef6\u5939"; //选择框提示信息
var Shell = new ActiveXObject("Shell.Application");
var Folder = Shell.BrowseForFolder(0, Message, 64,"D:");//起始目录为:我的电脑
//var Folder = Shell.BrowseForFolder(0,Message,0); //起始目录为:桌面
if (Folder != null) {
Folder = Folder.items(); // 返回 FolderItems 对象
Folder = Folder.item(); // 返回 Folderitem 对象
Folder = Folder.Path; // 返回路径
if (Folder.charAt(Folder.length - 1) != "\\") {
Folder = Folder + "\\";
}
document.getElementById(path).value= Folder;
return Folder;
}
}
catch (e) {
alert(e.message);
}
}</script>
<script language="javascript">
function testnull()
{
if (document.getElementById('path').value==''|document.getElementById('path').value.indexOf(" ")> 0|document.getElementById('path').value.indexOf(".")> 0)
{
alert('请确保您选择了上传路径,并且路径中不包含非法字符” “,”.“');
document.getElementById('path').focus();
return false;
}
else return true;
}
</script>
</head>
<body>
<%
AddCookies add=new AddCookies();
%>
<p align="center">给我传文件吧</p>
<p align="center">请选择需要上传的文件</p>
<form action="do_upload.jsp" method="post" onsubmit="return testnull()" ENCTYPE="multipart/form-data">
<table width="75%" border="1" align="center">
<tr>
<td><div align="center">1:
<input type="file" name="file1" SIZE="30">
</div></td>
</tr>
<tr>
<td><div align="center">2:
<input type="file" name="file2" SIZE="30">
</div></td>
</tr>
<tr>
<td><div align="center">3:
<input type="file" name="file3" SIZE="30">
</div></td>
</tr>
<tr>
<td><div align="center">4:
<input type="file" name="file4" SIZE="30">
</div></td>
</tr>
<tr>
<tr>
<td><div align="center">请选择您上传的路径:
<input type="text" name="path" id='path'/>
<input type="button" onclick="browseFolder('path')" value="选择生成路径" />
</div></td>
</tr>
<tr>
<td><div align="center">
<input type="submit" name="submit" value="do_upload.jsp">
</div></td>
</tr>
</table>
</form>
</body>
</html>接受页
<%@ page contentType="text/html; charset=gb2312" language="java"
import="java.util.*,com.jspsmart.upload.*" errorPage="" %>
<html>
<head>
<title>文件上传处理页面</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> </head>
<body>
<%
// 新建一个SmartUpload对象
SmartUpload su = new SmartUpload();
// 上传初始化
su.initialize(pageContext);
// 设定上传限制
// 1.限制每个上传文件的最大长度。
// su.setMaxFileSize(10000);
// 2.限制总上传数据的长度。
// su.setTotalMaxFileSize(20000);
// 3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt文件。
// su.setAllowedFilesList("doc,txt");
// 4.设定禁止上传的文件(通过扩展名限制),禁止上传带有exe,bat,
// su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
// 上传文件
su.upload();
// 将上传文件全部保存到指定目录
int count = su.save(request.getParameter("path"));
out.println(request.getParameter("path"));
out.println(count+"个文件上传成功!<br>");
// 利用Request对象获取参数之值
out.println("TEST="+su.getRequest().getParameter("TEST")
+"<BR><BR>");
// 逐一提取上传文件信息,同时可保存文件。
for (int i=0;i<su.getFiles().getCount();i++)
{
com.jspsmart.upload.File file = su.getFiles().getFile(i);
// 若文件不存在则继续
if (file.isMissing()) continue;
// 显示当前文件信息
out.println("<TABLE BORDER=1>");
out.println("<TR><TD>表单项名(FieldName)</TD><TD>"
+ file.getFieldName() + "</TD></TR>");
out.println("<TR><TD>文件长度(Size)</TD><TD>" +
file.getSize() + "</TD></TR>");
out.println("<TR><TD>文件名(FileName)</TD><TD>"
+ file.getFileName() + "</TD></TR>");
out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>"
+ file.getFileExt() + "</TD></TR>");
out.println("<TR><TD>文件全名(FilePathName)</TD><TD>"
+ file.getFilePathName() + "</TD></TR>");
out.println("</TABLE><BR>");
int m = 0;
int n = 1;
// 将文件另存
// file.saveAs(request.getParameter("path") + file.getFileName());
// 另存到以WEB应用程序的根目录为文件根目录的目录下
// file.saveAs("/upload/" + myFile.getFileName(), su.SAVE_VIRTUAL);
// 另存到操作系统的根目录为文件根目录的目录下
// file.saveAs("c:\\temp\\" + myFile.getFileName(), su.SAVE_PHYSICAL);
}
%>
</body>
</html>我的路径path传送不过来
<%@page import="com.AddCookies" %>
<html>
<head><meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>郭帅的电脑e盘</title>
<script language="javascript">
/***
path 要显示值的对象id
****/
function browseFolder(path) {
try {
var Message = "\u8bf7\u9009\u62e9\u6587\u4ef6\u5939"; //选择框提示信息
var Shell = new ActiveXObject("Shell.Application");
var Folder = Shell.BrowseForFolder(0, Message, 64,"D:");//起始目录为:我的电脑
//var Folder = Shell.BrowseForFolder(0,Message,0); //起始目录为:桌面
if (Folder != null) {
Folder = Folder.items(); // 返回 FolderItems 对象
Folder = Folder.item(); // 返回 Folderitem 对象
Folder = Folder.Path; // 返回路径
if (Folder.charAt(Folder.length - 1) != "\\") {
Folder = Folder + "\\";
}
document.getElementById(path).value= Folder;
return Folder;
}
}
catch (e) {
alert(e.message);
}
}</script>
<script language="javascript">
function testnull()
{
if (document.getElementById('path').value==''|document.getElementById('path').value.indexOf(" ")> 0|document.getElementById('path').value.indexOf(".")> 0)
{
alert('请确保您选择了上传路径,并且路径中不包含非法字符” “,”.“');
document.getElementById('path').focus();
return false;
}
else return true;
}
</script>
</head>
<body>
<%
AddCookies add=new AddCookies();
%>
<p align="center">给我传文件吧</p>
<p align="center">请选择需要上传的文件</p>
<form action="do_upload.jsp" method="post" onsubmit="return testnull()" ENCTYPE="multipart/form-data">
<table width="75%" border="1" align="center">
<tr>
<td><div align="center">1:
<input type="file" name="file1" SIZE="30">
</div></td>
</tr>
<tr>
<td><div align="center">2:
<input type="file" name="file2" SIZE="30">
</div></td>
</tr>
<tr>
<td><div align="center">3:
<input type="file" name="file3" SIZE="30">
</div></td>
</tr>
<tr>
<td><div align="center">4:
<input type="file" name="file4" SIZE="30">
</div></td>
</tr>
<tr>
<tr>
<td><div align="center">请选择您上传的路径:
<input type="text" name="path" id='path'/>
<input type="button" onclick="browseFolder('path')" value="选择生成路径" />
</div></td>
</tr>
<tr>
<td><div align="center">
<input type="submit" name="submit" value="do_upload.jsp">
</div></td>
</tr>
</table>
</form>
</body>
</html>接受页
<%@ page contentType="text/html; charset=gb2312" language="java"
import="java.util.*,com.jspsmart.upload.*" errorPage="" %>
<html>
<head>
<title>文件上传处理页面</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> </head>
<body>
<%
// 新建一个SmartUpload对象
SmartUpload su = new SmartUpload();
// 上传初始化
su.initialize(pageContext);
// 设定上传限制
// 1.限制每个上传文件的最大长度。
// su.setMaxFileSize(10000);
// 2.限制总上传数据的长度。
// su.setTotalMaxFileSize(20000);
// 3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt文件。
// su.setAllowedFilesList("doc,txt");
// 4.设定禁止上传的文件(通过扩展名限制),禁止上传带有exe,bat,
// su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
// 上传文件
su.upload();
// 将上传文件全部保存到指定目录
int count = su.save(request.getParameter("path"));
out.println(request.getParameter("path"));
out.println(count+"个文件上传成功!<br>");
// 利用Request对象获取参数之值
out.println("TEST="+su.getRequest().getParameter("TEST")
+"<BR><BR>");
// 逐一提取上传文件信息,同时可保存文件。
for (int i=0;i<su.getFiles().getCount();i++)
{
com.jspsmart.upload.File file = su.getFiles().getFile(i);
// 若文件不存在则继续
if (file.isMissing()) continue;
// 显示当前文件信息
out.println("<TABLE BORDER=1>");
out.println("<TR><TD>表单项名(FieldName)</TD><TD>"
+ file.getFieldName() + "</TD></TR>");
out.println("<TR><TD>文件长度(Size)</TD><TD>" +
file.getSize() + "</TD></TR>");
out.println("<TR><TD>文件名(FileName)</TD><TD>"
+ file.getFileName() + "</TD></TR>");
out.println("<TR><TD>文件扩展名(FileExt)</TD><TD>"
+ file.getFileExt() + "</TD></TR>");
out.println("<TR><TD>文件全名(FilePathName)</TD><TD>"
+ file.getFilePathName() + "</TD></TR>");
out.println("</TABLE><BR>");
int m = 0;
int n = 1;
// 将文件另存
// file.saveAs(request.getParameter("path") + file.getFileName());
// 另存到以WEB应用程序的根目录为文件根目录的目录下
// file.saveAs("/upload/" + myFile.getFileName(), su.SAVE_VIRTUAL);
// 另存到操作系统的根目录为文件根目录的目录下
// file.saveAs("c:\\temp\\" + myFile.getFileName(), su.SAVE_PHYSICAL);
}
%>
</body>
</html>我的路径path传送不过来
直接request.getParameter是获取不到的。
切记