📄 download(java流实现下载功能).java
字号:
import java.io.*;
import java.text.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.net.*;
/**
* 实现下载功能
*/
public class DownLoad {
public void downLoad(HttpServletResponse response,
String headName, String fileUrl) throws Exception{
Logger.log("begin download " + headName);
if (headName.endsWith(".jpg") || (headName.endsWith(".gif"))) {
//no need setting content type and header
} else if (headName.endsWith(".txt")) {
response.setContentType( "text;charset=GB2312");
response.setHeader("Content-disposition",
"attachment; filename=" + headName );
} else {
response.setContentType( "application/doc;charset=GB2312");
response.setHeader("Content-disposition",
"attachment; filename=" + headName );
}
String fileURL = fileUrl;
Logger.log(fileURL);
if(fileURL == null)
return;
try{
File file = new File(fileUrl);
FileInputStream bis = new FileInputStream(file);
OutputStream bos = response.getOutputStream();
byte[] buff = new byte[1024];
int readCount = 0;
int i = 0;
readCount = bis.read(buff);
while (readCount != -1){
bos.write(buff, 0, readCount);
readCount = bis.read(buff);
}
Logger.log("read finished!");
if (bis!=null)
bis.close();
if (bos!=null)
bos.close();
}catch(Exception e){
e.printStackTrace();
throw e;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -