This commit is contained in:
孙小云 2026-02-05 16:11:21 +08:00
parent 6ffad8c83b
commit 579abd3c45
1 changed files with 27 additions and 20 deletions

View File

@ -179,55 +179,62 @@ public class FileUploadUtils {
System.out.println("传入的扩展名参数: [" + FilenameExtension + "]");
System.out.println("扩展名长度: " + (FilenameExtension != null ? FilenameExtension.length() : "null"));
if (FilenameExtension.equalsIgnoreCase(".bmp")) {
// 统一处理如果没有点自动添加点
String extension = FilenameExtension;
if (extension != null && !extension.startsWith(".")) {
extension = "." + extension;
System.out.println("扩展名没有点,自动添加后: [" + extension + "]");
}
if (extension.equalsIgnoreCase(".bmp")) {
return "image/bmp";
}
if (FilenameExtension.equalsIgnoreCase(".gif")) {
if (extension.equalsIgnoreCase(".gif")) {
return "image/gif";
}
if (FilenameExtension.equalsIgnoreCase(".jpeg") ||
FilenameExtension.equalsIgnoreCase(".jpg") ||
FilenameExtension.equalsIgnoreCase(".png")) {
if (extension.equalsIgnoreCase(".jpeg") ||
extension.equalsIgnoreCase(".jpg") ||
extension.equalsIgnoreCase(".png")) {
return "image/jpeg";
}
if (FilenameExtension.equalsIgnoreCase(".html")) {
if (extension.equalsIgnoreCase(".html")) {
return "text/html";
}
if (FilenameExtension.equalsIgnoreCase(".txt")) {
if (extension.equalsIgnoreCase(".txt")) {
return "text/plain";
}
if (FilenameExtension.equalsIgnoreCase(".vsd")) {
if (extension.equalsIgnoreCase(".vsd")) {
return "application/vnd.visio";
}
if (FilenameExtension.equalsIgnoreCase(".pptx") ||
FilenameExtension.equalsIgnoreCase(".ppt")) {
if (extension.equalsIgnoreCase(".pptx") ||
extension.equalsIgnoreCase(".ppt")) {
return "application/vnd.ms-powerpoint";
}
if (FilenameExtension.equalsIgnoreCase(".docx") ||
FilenameExtension.equalsIgnoreCase(".doc")) {
if (extension.equalsIgnoreCase(".docx") ||
extension.equalsIgnoreCase(".doc")) {
return "application/msword";
}
if (FilenameExtension.equalsIgnoreCase(".xml")) {
if (extension.equalsIgnoreCase(".xml")) {
return "text/xml";
}
//PDF
if (FilenameExtension.equalsIgnoreCase(".pdf")) {
if (extension.equalsIgnoreCase(".pdf")) {
return "application/pdf";
}
//excel
if (".xls".equalsIgnoreCase(FilenameExtension)) {
if (".xls".equalsIgnoreCase(extension)) {
return "application/vnd.ms-excel";
}
if (".xlsx".equalsIgnoreCase(FilenameExtension)) {
if (".xlsx".equalsIgnoreCase(extension)) {
return "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
}
//waypoints 拓恒+大疆的航线文件类型
System.out.println("检查 waypoints 匹配:");
System.out.println(" 与 '.waypoints' 比较: " + FilenameExtension.equalsIgnoreCase(".waypoints"));
System.out.println(" 与 '.kmz' 比较: " + FilenameExtension.equalsIgnoreCase(".kmz"));
System.out.println(" 与 '.waypoints' 比较: " + extension.equalsIgnoreCase(".waypoints"));
System.out.println(" 与 '.kmz' 比较: " + extension.equalsIgnoreCase(".kmz"));
if (FilenameExtension.equalsIgnoreCase(".waypoints") ||
FilenameExtension.equalsIgnoreCase(".kmz")) {
if (extension.equalsIgnoreCase(".waypoints") ||
extension.equalsIgnoreCase(".kmz")) {
System.out.println("匹配成功! 返回 application/octet-stream");
return "application/octet-stream";
}