function mydownload(filename, downloadlocation){
var downloadform = document.createElement("FORM");
document.body.appendChild(downloadform);
downloadform.method
= "post";
createNewFormElement(downloadform,
"filename", filename);
createNewFormElement(downloadform,
"downloadlocation", downloadlocation);
downloadform.action
= "<%=base %>/downloadAction.do";
downloadform.target
= "_self";
downloadform.submit();
}


function createNewFormElement(inputForm, elementName, elementValue)
{
var newElement = document.createElement("input");
newElement.setAttribute(
"name",elementName);
newElement.setAttribute(
"type","hidden");
newElement.setAttribute(
"value",elementValue);
inputForm.appendChild(newElement);
return newElement;
}
FileInputStream fis = null;
OutputStream ops
= null;

try {
fis
= new FileInputStream(downloadlocation);

reponse.reset();
reponse.setContentType(
"application/x-download");
reponse.setHeader(
"Content-Disposition", "attachment;filename=" + filename);

ops
= reponse.getOutputStream();

byte[] buffer = new byte[1024];
int count = 0;

while((count = fis.read(buffer)) > 0){
ops.write(buffer,
0, count);
}

ops.flush();

}
catch (FileNotFoundException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
finally{
if(fis != null){
try {
fis.close();
}
catch (IOException e) {
e.printStackTrace();
}
}

if(ops != null){
try {
ops.close();
}
catch (IOException e) {
e.printStackTrace();
}
}
}

界面及后台相关代码--

相关文章: