如何在运行时处理重复文件

如何在运行时处理重复文件

我们有一个程序,可以解压文件并将解压后的文件存储在目录中。

解压时,解压后的文件可能与我们解压的另一个压缩文件具有相同的名称。

1.zip

test.log
test1.log

2.zip

test2.log
test1.log

我有一个循环来查看 *.zip 文件,然后在语句中解压缩该文件。

由于文件重复,因此失败。

我想避免替换该文件,我不想覆盖该文件。

您能否建议一些可以保留所有四个文件的技术?

答案1

简单的答案是将每个档案提取到单独的目录,从而为每个档案提供唯一的命名空间(例如 1/test.log、1/test1.log、2/test2.log、2/test1.log)。

如果它们必须出现在同一个位置,那么您可以将存档名称添加到每个文件名的前面(例如 1__test.log、1__test1.log、2__test2.log、2__test1.log)。但这肯定需要付出更多努力,而且如果存档名称包含您使用的分隔符序列(__我示例中的部分),则仍有极小的可能性发生名称冲突。

答案2

只需使用 WINRAR 并勾选设置中的所有上下文菜单选项的框。

然后,您可以选择所有要解压的档案,右键单击它们并将它们拖到您希望它们所在的文件夹中,这将显示 WinRar 上下文菜单。

然后,您可以选择将它们全部提取到同一目录中,或者将每个文件提取到自己命名的目录中(以 zip 文件名命名)。

如果您希望它们全部放在同一目录中,请选择“在此处提取”。

WinRar 会自动检测重复的文件名并为您提供一系列选项。

只需选择“全部重命名”,每个后续重复项都会在其文件名后附加一个括号内的数字。例如(1),(2)等。

相关内容