В файловых системах Windows предварительно вычисленный хэш для каждого файла?

StackOverflow https://stackoverflow.com/questions/1490384

Вопрос

Я хочу искать файл дублировать его хэшем. В целях производительности я хочу знать, есть ли хранящаяся хэш/контрольная сумма для каждого файла в файловых системах NTFS/FAT. Если есть, мне не нужно вычислять их все для поиска моего файла.

Если есть, как получить к нему доступ с помощью .NET?

Если это поможет, это будут файлы JPEG. У них есть контрольная сумма?

Это было полезно?

Решение

Там нет такого.

Другие советы

Windows не хранит хэш для каждого файла. Как предполагает Jader Dias, есть контрольные суммы для EXE и DLL, но это не те дроиды, которые вы ищете.

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

Файлы JPEG могут иметь некоторые контрольные суммы или хэши, но вы, вероятно, также не можете рассчитывать на них.

У Windows, тем не менее, есть поиск сейчас, и, если я правильно помню, вы можете написать свои собственные плагины для него (другими словами, индексировать файлы в пользовательском порядке). Предположительно, вы можете написать плагин для JPGS, а затем просто сделать вызовы API поиска, чтобы найти файлы (после того, как Windows делает индексацию).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top