如何仅通过泽西文件上传获取文件名

我正在使用Jersey进行文件上传,但我只需要文件名。 Internet Explorer发送整个路径,并且根据FormDataContentDisposition中的内容,Jersey分析出斜杠,所以我甚至不能解析它。 谢谢。


听起来像一个困难的问题。 理想的情况当然是抓住包含斜杠的字符串,并使用string.split!

如果不这样做,我可以开始思考的唯一策略是尝试遍历字符串,看看文件夹是否存在字符串的第一部分的各种长度等。这可能会导致问题,但如果您打算找到一个文件夹“MyFolder (2)“,还有一个”MyFolder“。 我不知道很多球衣,但我会建议试着找到一种不同的方式来抓住你需要的字符串。


  • 将更改事件添加到文件输入标记
  • 解析出文件名,因为此时它仍然有斜杠
  • 将该值粘贴到隐藏的输入中
  • 随后隐藏的输入会与表单的其余部分一起提交。


    @kombat已经找到了这个解决方案,并将其作为评论发布。 为了更好,这是现在转贴为社区维基答案。


    我在尝试Eclipse浏览器时遇到了该错误。 当我在Chrome上试用我的代码时,FormDataContentDisposition.getFileName()很好。

    链接地址: http://www.djcxy.com/p/16303.html

    上一篇: How to get only the filename with Jersey File Upload

    下一篇: How do I iterate through an enum?