1.bootstrap用form表单写文件上传的时候,出现文件名获取不到。
//原代码是这样的
String filename = file.getOriginalFilename();
谷歌,火狐浏览器上传都能直接获取文件名,唯独IE不行
2.解决办法:
类:FileUtils
//在获取文件名后,判断是否在IE环境下运行的此方法,并做相应的字符串截取的处理,即可返回正确的结果。
public static String getFileName(MultipartFile file) {
String fileName = file.getOriginalFilename();
//检查unix样式的路径
int unixSep = fileName.lastIndexOf('/');
//检查windows样式的路径
int winSep = fileName.lastIndexOf('\\');
//在最可能的点被切断
int pos = (winSep > unixSep ? winSep : unixSep);
if (pos != -1) {
//找到的任何路径分隔符。
fileName = fileName.substring(pos + 1);
}
return fileName;
}
在你的service层调用这个方法,IE浏览器获取文件名就是正确的~~~~~
如果文章有用,麻烦点个赞,给个评论,谢谢。
版权声明:本文为wlf_wzx原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。