126邮箱里的上传方式:
form里:
private FormFile file;
private String filename;
// 多附件上传应该是一个数组
private List<FormFile> myFiles;
public void MultiUploadForm() {
myFiles = new ArrayList<FormFile>();
// 为了能够在页面初始显示一个file
myFiles.add(file);
}
action里:
TestForm testForm = (TestForm) form;
String path = "D://";
System.out.println(path);
MultipartRequestHandler mrh = testForm.getMultipartRequestHandler();
System.out.println(mrh.getAllElements().size());
Map formFiles = mrh.getFileElements();
System.out.println(testForm.getFilename());
// 实现文件上传的复制:
if (formFiles != null) {
Iterator fileit = formFiles.values().iterator();
while (fileit.hasNext()) {
FormFile forms = (FormFile) fileit.next();
try {
InputStream stream = forms.getInputStream();
OutputStream bos = new FileOutputStream(path
+ forms.getFileName());
int bytesRead = 0;
byte[] buffer = new byte[512];
while ((bytesRead = stream.read(buffer, 0, 512)) != -1) {
bos.write(buffer, 0, bytesRead);
}
bos.close();
stream.close();
System.out.println("上传完成");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
System.out.println(forms.getFileName());}
}
}
jsp页面:
with(document.forms("demo")){
if(i>=5){
alert("最多不能超过5个!");
return ;
}
insertAdjacentHTML("beforeEnd","<input type=/"file/" id="+i+" value="+i+" name=input"+(i++)+"> <br>" ) ;
}
}
function lastElement(){
with(document.forms("demo")){
insertAdjacentHTML("beforeEnd","<input type=/"hidden/" value="+(i)+" name=/"maxNum/" >") ;
}
}
</script>
</head>
<body>
<form action="test.do"
name=demo method="post" enctype="multipart/form-data"
οnsubmit="lastElement();">
<input type="button" οnclick=addElements(); value="增加">
<input type="submit" name="save" value="Save">
<br>
<input type = "text" name = "filename"/>
</form>
<br>
</body>
</html>