在apache commons文件中,上传上传的文件可用作FileItem对象
如果我使用fileitem.getName()
获取此类文件的名称,则返回完整路径(例如:C:\Test\test.txt
)。
有没有办法只获取文件名。
我真正需要的是使用File.createTempFile()
将上传的文件保存为临时文件
但临时文件的名称和扩展名应与上传的文件相同,而不是随机名称(如temp.tmp
)
答案 0 :(得分:22)
为什么FileItem.getName()返回整个路径,而不仅仅是 文件名?
Internet Explorer提供上传文件的完整路径 不仅仅是基本文件名。由于FileUpload提供了什么 由客户端(浏览器)提供,您可能想要删除此路径 申请中的信息。您可以使用以下方法执行此操作 Commons IO的方法(你已经拥有,因为它被使用了 上传文件)。
String fileName = item.getName();
if (fileName != null) {
fileName = FilenameUtils.getName(fileName);
}