java 下载文件文件名_java – 从http下载文件中检索文件名
我正在尝试从Web服务器下载文件并将其保存在服务器随文件发送的原始文件名下.下载工作得很好,但我无法获得真正的文件名.
举个实例我试图下载this file(Foxit PDF阅读器).
如果我在Chrome等浏览器中使用此链接,则浏览器会下载包含版本等名称的文件.我从哪里获取此名称?我尝试阅读标题信息并正在搜索Content-Disposition但服务器不会发送此信息.我从哪里获得确切的文件名?
我试过这样的事情:
try {
URL webfile = new URL("http://www.foxitsoftware.com/downloads/latest.php?product=Foxit-Reader");
URLConnection con = webfile.openConnection();
Map map = con.getHeaderFields();
Set set = map.entrySet();
Iterator iterator = set.iterator();
while (iterator.hasNext()) {
System.out.println(iterator.next());
}
} catch (IOException ex) {
System.out.println("Error: "+ex.getMessage());
}
正如您在输出中看到的那样,没有Content-Disposition:
null=[HTTP/1.1 200 OK]
ETag=["244005-f36d40-4d003f3868000"]
Date=[Sat, 08 Dec 2012 12:29:02 GMT]
Content-Length=[15953216]
Last-Modified=[Tue, 04 Dec 2012 10:01:36 GMT]
Content-Type=[application/x-msdos-program]
Connection=[close]
Accept-Ranges=[bytes]
Server=[Apache/2.2.16 (Debian)]
那么如何检索确切的文件名呢?浏览器中的链接下载名为FoxitReader544.11281_enu_Setup.exe的文件.
有任何想法吗?!
总结
以上是生活随笔为你收集整理的java 下载文件文件名_java – 从http下载文件中检索文件名的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: java进制代码_Java将字节转换为十
- 下一篇: win10开始不显示python_Win