请问用java如何获取下载文件的文件名?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问用java如何获取下载文件的文件名?相关的知识,希望对你有一定的参考价值。

我获得了一个URL, 111点4点118点51:12001/ruif/getappfull?synctime=201407
输入后直接就可以直接下载,文件名为 201407(全量).zip 里面有个文件夹名称为201407
这个URL是真实地址,不会跳转,我用DECode方法测试URl还是原来的地址,所以应该不会有这个问题
请问我如何获得这个文件的名称呢?就是“ 201407(全量) ”这个文件名,用什么方法?
HttpURLConnection httpConnection = (HttpURLConnection) url.openConnection();
我用得java语言

感谢了!

参考技术A File类里面的getName()方法 参考技术B i + ":" + files[i].getName() + ";;;" + files[i].getAbsolutePath() 参考技术C System.out.println(i + ":" + files[i].getName() + ";;;" + files[i].getAbsolutePath());

这里显示出来了啊 。是想显示在页面中?

用out.println() 输出就是了。

文件名过滤,就是用字符串String.startsWith()判断
if(files[i].getName().startsWIth("1_"))
out.println(files[i].getName()+"<br/>");

满意请采纳。

JAVA实现ZIP文件下载,下载时获取不了文件名,只能用固定的文件名代替,而且获取不了下载的文件类型?

如果用文件自身的文件名,下载时文件名变为“download”,而且没有后缀,要手动改为.zip,而用固定的文件名“Template.zip”则可以拿到.zip文件
自己解决了,加上new String( fileName.getBytes("gb2312"), "ISO8859-1" )+".zip"就搞定了,原来是header的长度限制问题。。。。。

参考技术A 你要去看一下你的filename取值是什么,应该是你的filename取值就是download追问

filename是从数据库里面获取的,我调试过,是可以拿到真实的文件名。还有,在这里,我用filename+“.zip”,但是下载时也获取不了文件后缀,用"Teamplate.zip"又可以,这里不就是简单的字符拼接而已吗,难道还有什么玄机?

追答

你可以输出一下你拼接的文件名称,看一下是什么,从数据库取出的,有没有考虑数据库编码方式?

以上是关于请问用java如何获取下载文件的文件名?的主要内容,如果未能解决你的问题,请参考以下文章

java 如何读入 指定.java或.c文件

java语句如何获取XML文件的节点值

java 已经获取pdf代码,如何把他pdf文件保存到本机 要求用输出流做

java程序 如何设置下载文件的保存路径

请问高手,用Calendar包实现,在java中如何获取指定年月日的星期?

java在浏览器上获取FTP读文件路径