deal.java
来自「jsp程序开发范例宝典」· Java 代码 · 共 64 行
JAVA
64 行
package com.core;
import java.io.*;
import java.sql.ResultSet;
import com.core.ConnDB;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Deal {
public void download(HttpServletRequest request,
HttpServletResponse response, String url) {
String filePath = request.getRealPath("/");
String fileName=url.substring(url.lastIndexOf("/")+1);
try {
fileName = new String(fileName.getBytes("GBK"), "ISO-8859-1");
} catch (UnsupportedEncodingException ex) {
}
response.setHeader("Content-disposition",
"attachment; filename=" + fileName);
try {
File file=new File(filePath+url);
FileInputStream input = new FileInputStream(file);
BufferedInputStream bufferinput = new BufferedInputStream(input);
BufferedOutputStream bufferoutput = new BufferedOutputStream(
response.getOutputStream());
byte[] temp = new byte[2048];
int bytesRead;
while ((bytesRead = (bufferinput.read(temp, 0, temp.length))) != -1) {
bufferoutput.write(temp, 0, bytesRead);
}
bufferoutput.flush();
if (input != null) {
input.close();
}
if (bufferinput != null) {
bufferinput.close();
}
if (bufferoutput != null) {
bufferoutput.close();
}
} catch (Exception e) {
e.getMessage();
}
}
//获取文件相对路径及文件名
public String getFilename(String id) {
ConnDB conn = new ConnDB();
String sql = "select * from tb_mp3list where id=" + id;
ResultSet rs = conn.executeQuery(sql);
String url = "";
try {
if (rs.next()) {
url = rs.getString("url");
}
} catch (Exception e) {
System.out.println("查询时的错误信息:" + e.getMessage());
}
return url;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?