当前位置: 代码迷 >> Java Web开发 >> http上载(如何不可以?)
  详细解决方案

http上载(如何不可以?)

热度:9370   发布时间:2013-02-25 21:08:31.0
http下载(怎么不可以?)
现在有一个地址如下 http://192.168.100.10:8080/webapp/expExcel.do?tag=3

在ie中输入可以下载Excel

现在用java程序如何实现下载这个地址的文件到本地
下面是网上找的方法:
public static void saveToFile(String destUrl, String fileName)
throws IOException {
FileOutputStream fos = null;
BufferedInputStream bis = null;
HttpURLConnection httpUrl = null;
URL url = null;
byte[] buf = new byte[1024];
int size = 0;
// 建立链接
url = new URL(destUrl);
httpUrl = (HttpURLConnection) url.openConnection();
// 连接指定的资源
httpUrl.connect();
// 获取网络输入流
bis = new BufferedInputStream(httpUrl.getInputStream());
// 建立文件
fos = new FileOutputStream(fileName);
if (true)
System.out.println("正在获取链接[" + destUrl + "]的内容.../n将其保存为文件["
+ fileName + "]");
// 保存文件
while ((size = bis.read(buf)) != -1)
fos.write(buf, 0, size);
fos.close();
bis.close();
httpUrl.disconnect();
}


你设置下response的ContentType这类的东西我知道了 上面的都没有问题

可以下载的 但是https://192.168.100.10:8080/webapp/expExcel.do?tag=3这个路径是不行的

是https的就不行
引用:
浏览器访问一个网址它做了很多事情的

比如上面那个网址可能先返回了一个重定向的回应,浏览器根据这个回应定向到新的地址

同意这个,
http://192.168.100.10:8080/webapp/expExcel.do?tag=3这个路径就对不是文件的真实路径。浏览器访问一个网址它做了很多事情的

比如上面那个网址可能先返回了一个重定向的回应,浏览器根据这个回应定向到新的地址
  相关解决方案