我实现下载功能的时候;例如路径是http://www.baidu.com/img/baidu_sylogo1.gif
形式的;不是从当前工程中那东西;从别的服务器拿;读取文件路径会出现(文件名、目录名或卷标语法不正确。)
下面是我的代码:String downFilename="http://www.baidu.com/img/baidu_sylogo1.gif";//要下载的文件名称
String filepath="F:\\commons-httpclient-3.1.jar";//要下载的文件完整路径
response.setContentType("text/plain");
response.setHeader("Location",downFilename);
response.setHeader("Content-Disposition", "attachment; filename=" + downFilename);
OutputStream outputStream = response.getOutputStream();
InputStream inputStream = new FileInputStream(filepath);
byte[] buffer = new byte[1024];
int i = -1;
while ((i = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, i);
}
outputStream.flush();
outputStream.close();
inputStream.close();InputStream inputStream = new FileInputStream(filepath);
在这一步会出现(文件名、目录名或卷标语法不正确。);
请问如何解决
形式的;不是从当前工程中那东西;从别的服务器拿;读取文件路径会出现(文件名、目录名或卷标语法不正确。)
下面是我的代码:String downFilename="http://www.baidu.com/img/baidu_sylogo1.gif";//要下载的文件名称
String filepath="F:\\commons-httpclient-3.1.jar";//要下载的文件完整路径
response.setContentType("text/plain");
response.setHeader("Location",downFilename);
response.setHeader("Content-Disposition", "attachment; filename=" + downFilename);
OutputStream outputStream = response.getOutputStream();
InputStream inputStream = new FileInputStream(filepath);
byte[] buffer = new byte[1024];
int i = -1;
while ((i = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, i);
}
outputStream.flush();
outputStream.close();
inputStream.close();InputStream inputStream = new FileInputStream(filepath);
在这一步会出现(文件名、目录名或卷标语法不正确。);
请问如何解决
解决方案 »
- JS问题:大家帮我看看为什么我不能改变下拉列表的值
- 苦恼??
- c:forEach嵌套问题
- 使用标签<bean:include>出错??
- Eclipse连数据库问题
- Struts中,同一页面两Date输入框,一个可以自动绑定,一个不行?
- 这个奇怪的问题怎么解决?
- 新手求教 J2EE 用的框架式spring MVC
- 关于写文件操作的java程序在不同的操作系统上设计路径问题,有兴趣的来讨论一下?
- 谁能让jbuilder支持sun one application server 7,要多少分就给多少分!!!!!!!!!!
- servlet:No buffer space available
- 我的SSH中,为什么老是说找不到文件啊???T.T求指教
String filepath="F:\\commons-httpclient-3.1.jar";//要下载的文件完整路径
response.setContentType("text/plain");
response.setHeader("Location",downFilename);
response.setHeader("Content-Disposition", "attachment; filename=" + downFilename);
InputStream inputStream = response.getInputStream();
OutputStream outputStream = new FileOutputStream(filepath);
byte[] buffer = new byte[1024];
int i = -1;
while ((i = inputStream.read(buffer)) != -1) {
outputStream.write(buffer, 0, i);
}
outputStream.flush();
outputStream.close();
inputStream.close();
;换成 HttpClient的post去读取网络流然后再写出去就OK了;谢谢;我进行结贴
http://blog.csdn.net/psuaije/article/details/7192776