Как определить, что файл в одной папке совпадает с файлом в другой папке, но был переименован - PullRequest
0 голосов
/ 15 апреля 2011

Я пишу программу для резервного копирования, и она будет иметь возможности синхронизации.Он будет похож на Microsoft SyncToy, но у него будет гораздо больше гибкости и «группового» резервного копирования и т. Д.

Я использую VB.Net 2010 для написания программы.Проблема, с которой мне нужна помощь, заключается в эффективном сравнении исходного файла с целевым файлом, когда единственным различием между файлом является имя.(Работа с методом «Contribute» для синхронизации папки »)

Другими словами, если у меня есть папка резервной копии с кучей резервных копий файлов и папок из основной исходной папки, и я меняю имя однойфайлов в главной папке, но ничего не делать с ней, как я могу сказать, что переименованный файл совпадает с оригинальным именованным файлом в папке назначения. В этом случае я хотел бы переименовать файл назначения в новыйимя ему было дано в главной папке, вместо того, чтобы просто копировать переименованный файл в резервную папку и заканчивать ненужными дубликатами файлов с разными именами.

Спасибо за помощь,

Ральф Малф

Ответы [ 2 ]

1 голос
/ 20 мая 2011

это наиболее интеллектуальный подход к синхронизации, синхронизация должна выполняться в 4 основных этапа: 1 - сравнить файлы в папке назначения и в исходной папке 2 - переименовать идентичные файлы в папках назначения и переместить их в соответствующие подпапки в соответствии св исходную папку (не нужно копировать их из исходной папки) 3-удалить файлы, которые существуют только в целевой папке, 4-скопировать файлы, которые существуют только в исходной папке

примечание: не нужногромоздкое отслеживание, нет необходимости в огромном файле журнала для записи каждого движения, сделанного вами в исходной папке, нет необходимости копировать идентичные файлы с разными именами, нет необходимости копировать одинаковые файлы в разные подпапки, все существующие программы синхронизации делают этонапрасно тратя время на действия

ответы таковы: есть много эффективных программ для обнаружения идентичных файлов, вы можете использовать программу с открытым исходным кодом в новой программе синхронизации

0 голосов
/ 15 апреля 2011

Если вы хотите сравнить два файла, вам придется сравнить их содержимое, прочитав их и сравнив хеш-контент или выполнив побайтовое сравнение.(Вы можете смягчить это, сначала сравнив их размер)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...