从内容处置中获取文件名



我正在使用JSP将blob文件从HTML表单上传到数据库。我需要将文件名插入数据库。我知道文件名存储在内容处置标头中,我怎么能得到它?

如果您使用 JavaEE 6 上传文件,HttpServletRequest.getPart

Part part = request.getPart("xxx"); // input type=file name=xxx
String disposition = part.getHeader("Content-Disposition");
String fileName = disposition.replaceFirst("(?i)^.*filename="?([^"]+)"?.*$", "$1");

见部分。


正如@Marc提到的,我没有处理URL编码。(他还将文件名周围的引号设为可选。

fileName = URLDecoder.decode(fileName, StandardCharsets.ISO_8859_1);

未选中,但标头的 HTTP 编码应为默认 ISO-8859-1。

相关内容

  • 没有找到相关文章

最新更新