diff --git a/server/src/main/java/cn/keking/service/CompressFileReader.java b/server/src/main/java/cn/keking/service/CompressFileReader.java index 5e0ceeb4..c11e5909 100644 --- a/server/src/main/java/cn/keking/service/CompressFileReader.java +++ b/server/src/main/java/cn/keking/service/CompressFileReader.java @@ -55,7 +55,7 @@ public class CompressFileReader { List> entriesToBeExtracted = new LinkedList<>(); while (entries.hasMoreElements()) { ZipArchiveEntry entry = entries.nextElement(); - String fullName = entry.getName(); + String fullName = entry.getName().replaceAll("//", "").replaceAll("\\\\", ""); int level = fullName.split(archiveSeparator).length; // 展示名 String originName = getLastFileName(fullName, archiveSeparator); @@ -151,7 +151,7 @@ public class CompressFileReader { List> entriesToBeExtracted = new ArrayList<>(); while (newEntries.hasMoreElements()) { SevenZArchiveEntry entry = newEntries.nextElement(); - String fullName = entry.getName(); + String fullName = entry.getName().replaceAll("//", "").replaceAll("\\\\", ""); int level = fullName.split(archiveSeparator).length; // 展示名 String originName = getLastFileName(fullName, archiveSeparator);