67,513
社区成员
发帖
与我相关
我的任务
分享
这里说的很清楚了。http://blog.csdn.net/longshengguoji/article/details/39433307
不知道这是不是你需要的public InputStream getDownload(){ String agent = request.getHeader("USER-AGENT"); if (null != agent){ if (-1 != agent.indexOf("Firefox") || -1 != agent.indexOf("Chrome")) { // Firefox , Chrome try{ this.fileName = new String(fileName.getBytes("ISO-8859-1"),"UTF-8"); }catch (UnsupportedEncodingException e){ e.printStackTrace(); } }else{ try { this.fileName = new String(fileName.getBytes("ISO-8859-1"),"GBK"); }catch (UnsupportedEncodingException e){ e.printStackTrace(); } ServletActionContext.getResponse().setHeader("Content-Disposition","attachment;fileName=" + fileName); } } fileContentType = ServletActionContext.getServletContext().getMimeType(fileName)+";charset=UTF-8"; InputStream inputStream = null; try { inputStream = new FileInputStream(SysConstants.FILE_PATH + super.getUserName() + "/" + fileName); }catch (FileNotFoundException e1){ e1.printStackTrace(); } return inputStream; } public String getFileName() { String name = ""; try { name = new String(fileName.getBytes("UTF-8"), "ISO8859-1"); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } return name; } public void setFileName(String fileName) { this.fileName = fileName; }
这里说的很清楚了。http://blog.csdn.net/longshengguoji/article/details/39433307
这里说的很清楚了。http://blog.csdn.net/longshengguoji/article/details/39433307
public InputStream getDownload(){
String agent = request.getHeader("USER-AGENT");
if (null != agent){
if (-1 != agent.indexOf("Firefox") || -1 != agent.indexOf("Chrome")) {
// Firefox , Chrome
try{
this.fileName = new String(fileName.getBytes("ISO-8859-1"),"UTF-8");
}catch (UnsupportedEncodingException e){
e.printStackTrace();
}
}else{
try {
this.fileName = new String(fileName.getBytes("ISO-8859-1"),"GBK");
}catch (UnsupportedEncodingException e){
e.printStackTrace();
}
ServletActionContext.getResponse().setHeader("Content-Disposition","attachment;fileName=" + fileName);
}
}
fileContentType = ServletActionContext.getServletContext().getMimeType(fileName)+";charset=UTF-8";
InputStream inputStream = null;
try {
inputStream = new FileInputStream(SysConstants.FILE_PATH + super.getUserName() + "/" + fileName);
}catch (FileNotFoundException e1){
e1.printStackTrace();
}
return inputStream;
}
public String getFileName() {
String name = "";
try {
name = new String(fileName.getBytes("UTF-8"), "ISO8859-1");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return name;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
不知道这是不是你需要的下载成实体文件,应该是通过文件流读出、写入的方式实现的吧,所以本地要创建个文件,供输出流来写。
这种右键另存为不是就可以了?