¿Existe alguna manera confiable de determinar si dos archivos son iguales o no? Por ejemplo, dos archivos con el mismo tamaño y tipo pueden ser o no el mismo binarilly (sí, sé que no es realmente una palabra). Asumo que la comparación de uno o dos sumas de comprobación de los archivos va a ayudar, pero me pregunto:Determinar si un archivo es un duplicado
- ¿Cuán confiables son las sumas de comprobación en determinar si dos archivos son diferentes; ¿Cuáles son las posibilidades de que dos archivos diferentes tengan la misma suma de comprobación?
- ¿La confiabilidad aumentaría en aplicando suma de comprobación adicional comparaciones?
- ¿Qué algoritmo (s) de suma de verificación sería el más eficiente y/o confiable?
¡Se agradecen todas las ideas, sugerencias o pensamientos!
P.S. El código para esto se está escribiendo en Java ejecutándose en un sistema nix, pero la entrada genérica o de plataforma independiente es más útil.
comida extra para pensar ... Estaba trabajando en algo similar para eliminar archivos duplicados y descubrí que hacer sumas de parciales aceleraba mucho el proceso. Compute SHA-1 en los primeros 4k. Si son lo mismo, haz todo el archivo. También podría comparar directamente los primeros 4k bytes, achicando la primera diferencia. Todo depende de cuál sea tu objetivo final. – basszero