fix: 添加文件覆盖保护避免去重冲突
This commit is contained in:
@@ -393,15 +393,19 @@ async Task DeduplicateFramesAsync(string imagesDir, double threshold)
|
||||
{
|
||||
// Use temp name to avoid conflicts
|
||||
var tempName = Path.Combine(imagesDir, $"temp_{i + 1:D4}.jpg");
|
||||
// Delete temp file first if exists
|
||||
if (File.Exists(tempName)) File.Delete(tempName);
|
||||
File.Move(remainingFiles[i], tempName);
|
||||
}
|
||||
}
|
||||
|
||||
// Rename temp files to final names
|
||||
// Rename temp files to final names (with overwrite support)
|
||||
var tempFiles = Directory.GetFiles(imagesDir, "temp_*.jpg").OrderBy(f => f).ToList();
|
||||
for (int i = 0; i < tempFiles.Count; i++)
|
||||
{
|
||||
var finalName = Path.Combine(imagesDir, $"frame_{i + 1:D4}.jpg");
|
||||
// Delete final file first if exists (fix: overwrite existing file)
|
||||
if (File.Exists(finalName)) File.Delete(finalName);
|
||||
File.Move(tempFiles[i], finalName);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user