$.download = function(url, method, filedir, filename){
$('<form action="'+url+'" method="'+(method||'post')+'">' +
'<input type="text" name="filedir" value="'+filedir+'"/>' +
'<input type="text" name="filename" value="'+filename+'"/>' +
'</form>')
.appendTo('body').submit().remove();
};
function report(id){
$.ajax({
type : "POST",
url : "${ctx}/ai/park/houseContract/importWord",
dataType : "json",
contentType: "application/x-www-form-urlencoded; charset=utf-8",
data : {id : id},
cache : false,
success : function(result) {
var data = result[0];
log(data);
if (data.success == true) {
$.download('${ctx}/ai/park/houseContract/downloadFile', 'post', "", data.filepath);
} else {
js.alert(data[0].msg, {icon: 2}, function(){});
}
}
})
}
public void download(HttpServletRequest request, HttpServletResponse response){
InputStream ins = null;
BufferedInputStream bins = null;
OutputStream outs = null;
BufferedOutputStream bouts = null;
String file_name = request.getParameter("filename").trim();
try {
if (!"".equals(file_name)) {
File file = new File(file_name);
String[] strs = file_name.split("/");
String realFileName = strs[strs.length-1];
if (file.exists()) {
ins = new FileInputStream(file_name);
bins = new BufferedInputStream(ins);
outs = response.getOutputStream();
bouts = new BufferedOutputStream(outs);
response.setContentType("application/x-download");
response.setHeader(
"Content-disposition",
"attachment;filename="
+ URLEncoder.encode(realFileName, "UTF-8"));
int bytesRead = 0;
byte[] buffer = new byte[8192];
while ((bytesRead = bins.read(buffer, 0, 8192)) != -1) {
bouts.write(buffer, 0, bytesRead);
}
bouts.flush();
} else {
throw new Exception("下载的文件不存在!");
}
} else {
throw new Exception("导出文件时发生错误!");
}
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (null != ins) {
ins.close();
}
if (null != bins) {
bins.close();
}
if (null != outs) {
outs.close();
}
if (null != bouts) {
bouts.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
File file = new File(file_name);
if (!"".equals(file_name)) {
if (file.exists() && file.isFile()) {
if (file.delete()) {
System.out.println("删除单个文件" + file_name + "成功!");
} else {
System.out.println("删除单个文件" + file_name + "失败!");
}
} else {
System.out.println("删除单个文件失败!" + file_name + "不存在!");
}
} else {
System.out.println("删除文件时发生错误!");
}
}