Bonjour à tous,
J'ai un problème "conceptuel". Je cherche à faire un programme comparant deux arborescences, une locale et une à distance.
Jusqu'ici, j'ouvrais une connexion rsh, je faisais un ls -lR, et je comparais les deux résultat. Le problème, c'est que la date de modification qui est affichée peut correspondre à une date de copie par exemple, auquel cas les deux fichiers sont parfaitement identiques mais ont des dates différentes.
Du coup, pour parer ça, j'ai fait un checksum et j'ai comparé les résultats :
Ca marche parfaitement pour des fichiers en local, mais le problème c'est qu'on peut pas faire le "new FileInputStream" pour des fichiers distants... Du coup je peux pas calculer le checksum...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 CheckedInputStream cis = new CheckedInputStream( new FileInputStream(root), new CRC32()); byte[] tempBuf = new byte[128]; while (cis.read(tempBuf) >= 0) { } long checksum = cis.getChecksum().getValue();
Avez vous une idée de comment je pourrais comparer les deux fichiers sans passer par ce système svp ? Je compare déjà la taille des fichiers, mais ça serait plus fiable si je faisais un autre test (du genre checksum).
Merci d'avance !
Partager