代码如下:
System.out.println("************");
DiskFileUpload fu = new DiskFileUpload();
// 设置最大文件尺寸,这里是4MB
fu.setSizeMax(4194304);
// 设置缓冲区大小,这里是4kb
fu.setSizeThreshold(4096);
// 设置临时目录:
fu.setRepositoryPath(tempPath);
System.out.println("设置成功!!!");
// 得到所有的文件:
List fileItems = fu.parseRequest(request);
System.out.println("获取文件成功!!!");
Iterator i = fileItems.iterator();
// 依次处理每一个文件:
while(i.hasNext()) {
System.out.println("i====="+String.valueOf(i));
FileItem fi = (FileItem)i.next();
// 获得文件名,这个文件名包括路径:
String fileName = fi.getName();
if(fileName!=null&&!fileName.equals("")){
System.out.println("Filename========" + fileName);
String fileName2 = fileName.substring(fileName.lastIndexOf("\\"),fileName.length());
System.out.println("fileName2=======" + fileName2);
// 在这里可以记录用户和文件信息
// ...
// 写入文件,可以从fileName中提取文件名:
String s_save = request.getSession().getServletContext().getRealPath("/test");
System.out.println("save_path===" + s_save);
fi.write(new File(s_save + fileName2));
System.out.println("upload finish");
}
}问题:我上传txt,java,jsp这些文件都没有问题,但是上传xls,doc之类的文件,就会出错,System.out到“设置成功”,后面的“获取文件成功”就出不出来,不知道什么原因,各帮帮忙。
System.out.println("************");
DiskFileUpload fu = new DiskFileUpload();
// 设置最大文件尺寸,这里是4MB
fu.setSizeMax(4194304);
// 设置缓冲区大小,这里是4kb
fu.setSizeThreshold(4096);
// 设置临时目录:
fu.setRepositoryPath(tempPath);
System.out.println("设置成功!!!");
// 得到所有的文件:
List fileItems = fu.parseRequest(request);
System.out.println("获取文件成功!!!");
Iterator i = fileItems.iterator();
// 依次处理每一个文件:
while(i.hasNext()) {
System.out.println("i====="+String.valueOf(i));
FileItem fi = (FileItem)i.next();
// 获得文件名,这个文件名包括路径:
String fileName = fi.getName();
if(fileName!=null&&!fileName.equals("")){
System.out.println("Filename========" + fileName);
String fileName2 = fileName.substring(fileName.lastIndexOf("\\"),fileName.length());
System.out.println("fileName2=======" + fileName2);
// 在这里可以记录用户和文件信息
// ...
// 写入文件,可以从fileName中提取文件名:
String s_save = request.getSession().getServletContext().getRealPath("/test");
System.out.println("save_path===" + s_save);
fi.write(new File(s_save + fileName2));
System.out.println("upload finish");
}
}问题:我上传txt,java,jsp这些文件都没有问题,但是上传xls,doc之类的文件,就会出错,System.out到“设置成功”,后面的“获取文件成功”就出不出来,不知道什么原因,各帮帮忙。
出问题的估计是你找的组件建议lz自己写一些上传的例子你就明白了。
空的word文档10k
空的excel15k
我的email:[email protected],谢谢,LZ.
DiskFileUpload dfu = new DiskFileUpload();
dfu.setSizeThreshold(4096);
dfu.setRepositoryPath("e:\\");
try {
List list = dfu.parseRequest(request);
Iterator iter = list.iterator();
while(iter.hasNext()){
FileItem fi = (FileItem)iter.next();
String fileName = fi.getName();
System.out.println(fileName);
String s_save = request.getSession().getServletContext().getRealPath("/os.xls");
fi.write(new File(s_save));
System.out.println(s_save);
}
} catch (FileUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head>
<link rel="stylesheet" type="text/css"
href="JS/resources/css/ext-all.css" />
<script type="text/javascript" src="JS/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="JS/ext-all.js"></script>
</head><body id="body">
<div id=""></div><table border="2" border="2">
<tr>
<td>text:</td>
<td id=""><script type="text/javascript">
Ext
.onReady(function() { var msg = function(title, msg) {
Ext.Msg.show( {
title : title,
msg : msg,
minWidth : 200,
modal : true,
icon : Ext.Msg.INFO,
buttons : Ext.Msg.OK
}); }; var btnUpload = new Ext.Button( {
text : "Upload",
handler : function() {
save();
}
}); function save() {
if (fp.getForm().isValid()) {
fp
.getForm()
.submit(
{
url : 'indexTest',
waitMsg : 'Uploading your photo...',
success : function(fp, o) {
msg(
'Success',
'Processed file "' + o.result.files + '" on the server');
}
});
}
} var fp = new Ext.FormPanel( {
renderTo : 'fi-form',
fileUpload : true,
width : 500,
frame : true,
title : 'imageUpload',
autoHeight : true,
bodyStyle : 'padding: 10px 10px 0 10px;',
labelWidth : 50,
items : [ {
xtype : 'textfield',
fieldLabel : 'test1',
name : 'name',
inputType : 'file'
},
btnUpload
]
});
})
</script>
</tr>
</table>
<div id="fi-form"></div>
</body>
</html>jsp中