javaweb下载文件
//读取文件->写出文件
public static void main(String[] args) {
InputStream in =null;
OutputStream out = null;
try{
File file = new File("c:\\123.doc");
in = new FileInputStream(file);
out = new FileOutputStream("c:\\666.doc");
int len = 0;
byte buffer[] = new byte[1024];
while((len=in.read(buffer))>0){
out.write(buffer, 0, len);
}
}catch (Exception e) {
e.printStackTrace();
}finally{
try {
out.close();
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
//web文件下载
public void download() {
InputStream in = null ;
OutputStream out = null;
try{
in = new FileInputStream("c:\\123.doc");
int len =0;
byte[] buffer = new byte[1024];
out = getResponse().getOutputStream();
getResponse().setHeader("Content-Disposition", "attachment;filename=aaa.doc"); //告诉浏览器以什么方式打开文件
while((len=in.read(buffer))>0){
out.write(buffer, 0, len);
}
}catch (Exception e) {
e.printStackTrace();
}
}
//web文件下载(文件名称乱码解决)
public void download() {
InputStream in = null ;
OutputStream out = null;
try{
in = new FileInputStream("c:\\123.doc");
int len =0;
byte[] buffer = new byte[1024];
out = getResponse().getOutputStream(); //将文件写出response的输出流
getResponse().setContentType("text/html;charset=UTF-8");
getResponse().setHeader("Content-Disposition", "attachment;filename="+URLEncoder.encode("作业本.doc","UTF-8")); //告诉浏览器以什么方式打开文件 和 文件名乱码解决
while((len=in.read(buffer))>0){
out.write(buffer, 0, len);
}
}catch (Exception e) {
e.printStackTrace();
}
}
感谢您的阅读,您的支持是我写博客动力。