我用Eclipse6.5 我用的组件式smareupload 看了很多是网上的代码 都是那个样 代码全都写好 运行也正常 文件的大小 文件名 路径 什么都可以取到 可是就是在运行好后 没任何错误的提示 可指定的文件夹里就是没我上传的文件 代码如下
上传页面<body>
<form action="show.jsp" method="post" ENTYPE="MULTIPART/FORM-DATA">
选择上传的文件1
<input name="file1" type= "file"><br>
选择上传的文件2
<input name="file2" type= "file"><br>
选择上传的文件3
<input name="file3" type= "file"><br>
<input type="text" name="text" >
携带参数上传
<input type="submit" value="上传">
</form>
</body>
上传中页面<body>
<%
// 新建一个SmartUpload对象
SmartUpload su = new SmartUpload();
// 上传初始化
su.initialize(pageContext);
// 设定上传限制
try{
// 1.限制每个上传文件的最大长度。
su.setMaxFileSize(10000000);
// 2.限制总上传数据的长度。
su.setTotalMaxFileSize(20000000);
// 3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt文件。
su.setAllowedFilesList("doc,txt,jpg");
// 4.设定禁止上传的文件(通过扩展名限制),禁止上传带有exe,bat,
su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
// 上传文件
su.upload();
// 将上传文件全部保存到指定目录
int count = su.save("/upload");
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>"); // 将文件另存
//file.saveAs("/upload/" + myFile.getFileName());
// 另存到以WEB应用程序的根目录为文件根目录的目录下
//file.saveAs("/upload/" + myFile.getFileName(), su.SAVE_VIRTUAL);
// 另存到操作系统的根目录为文件根目录的目录下
//file.saveAs("c:\temp\" + myFile.getFileName(), su.SAVE_PHYSICAL); }
}catch(Exception e){
out.println("上传失败");
}
%>
</body>
上传页面<body>
<form action="show.jsp" method="post" ENTYPE="MULTIPART/FORM-DATA">
选择上传的文件1
<input name="file1" type= "file"><br>
选择上传的文件2
<input name="file2" type= "file"><br>
选择上传的文件3
<input name="file3" type= "file"><br>
<input type="text" name="text" >
携带参数上传
<input type="submit" value="上传">
</form>
</body>
上传中页面<body>
<%
// 新建一个SmartUpload对象
SmartUpload su = new SmartUpload();
// 上传初始化
su.initialize(pageContext);
// 设定上传限制
try{
// 1.限制每个上传文件的最大长度。
su.setMaxFileSize(10000000);
// 2.限制总上传数据的长度。
su.setTotalMaxFileSize(20000000);
// 3.设定允许上传的文件(通过扩展名限制),仅允许doc,txt文件。
su.setAllowedFilesList("doc,txt,jpg");
// 4.设定禁止上传的文件(通过扩展名限制),禁止上传带有exe,bat,
su.setDeniedFilesList("exe,bat,jsp,htm,html,,");
// 上传文件
su.upload();
// 将上传文件全部保存到指定目录
int count = su.save("/upload");
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>"); // 将文件另存
//file.saveAs("/upload/" + myFile.getFileName());
// 另存到以WEB应用程序的根目录为文件根目录的目录下
//file.saveAs("/upload/" + myFile.getFileName(), su.SAVE_VIRTUAL);
// 另存到操作系统的根目录为文件根目录的目录下
//file.saveAs("c:\temp\" + myFile.getFileName(), su.SAVE_PHYSICAL); }
}catch(Exception e){
out.println("上传失败");
}
%>
</body>
LZ在看下ENTYPE="MULTIPART/FORM-DATA"吧
我也没多大印象了
//file.saveAs("/upload/" + myFile.getFileName());
// 另存到以WEB应用程序的根目录为文件根目录的目录下
//file.saveAs("/upload/" + myFile.getFileName(), su.SAVE_VIRTUAL);
// 另存到操作系统的根目录为文件根目录的目录下
//file.saveAs("c:\temp\" + myFile.getFileName(), su.SAVE_PHYSICAL);
全都注释起来了,怎么保存嘛,file.saveAs(request.getRealPath("/upload/") + myFile.getFileName(), su.SAVE_VIRTUAL);
试试吧