2009-08-29 9 views
3

J'essaie de trouver quelques images .jpg perdues. Voici un fichier .bat pour configurer une version simplifiée de ma situationComment restaurer un fichier en utilisant C#?

md TestSetup 
cd TestSetup 
md a 
cd a 
echo "Can we find this later?" > a.abc 
del a.abc 
cd.. 
rd a 

Quel code serait nécessaire pour ouvrir à nouveau le fichier texte? Je cherche en fait des fichiers .jpeg qui ont été traités de la même manière

Plus de détails: J'essaye de récupérer des fichiers d'image à partir d'une sauvegarde à une touche précédente où les répertoires et les fichiers ont été supprimés et tout a été sauvegardé dans la sauvegarde avec un seul nom de personnage et chaque fichier a la même extension de 3 lettres. Il y a une sauvegarde en cours mais ils ont besoin de voir les précédents supprimés (ou au moins les fichiers .jpg).

Voici comment je voulais aborder: C# code

+0

Lorsque vous exécutez votre fichier bat, les fichiers supprimés finissent-ils dans la corbeille? – MusiGenesis

+1

Est-il impératif que vous écriviez cette application vous-même? Il existe des utilitaires gratuits de récupération de fichiers supprimés qui font exactement ce que vous voulez. –

+0

MusiGenesis: Non, lorsqu'un fichier batch le supprime de cette façon, il fait ce que Matthew mentionne, en remplaçant le premier caractère du nom de fichier dans l'entrée du répertoire par 00h. – Fred

Répondre

7

Au meilleur de ma connaissance, la plupart des outils de récupération de fichiers lisent le format du système de fichiers de bas niveau sur le disque et essayer de reconstituer les fichiers ensemble supprimés. Cela fonctionne parce que, au moins dans FAT, un fichier supprimé réside toujours dans le secteur spécifiant le répertoire (juste avec un premier caractère différent pour l'identifier comme "supprimé"). Les nouveaux fichiers peuvent remplacer ces entrées supprimées et rendre le fichier irrécupérable. C'est juste un peu de théorie.

Il y a une sauvegarde en cours, mais ils ont besoin de voir ceux supprimés précédentes (ou au moins les fichiers .jpg).

À moins qu'il ya une sauvegarde de ce fichier au moment que vous voulez restaurer, je crois que vous allez avoir du mal à obtenir ce fichier sans avoir recours à une lecture du système de fichiers bas niveau. Et même dans ce cas, vous pouvez ne pas avoir de chance si suffisamment de révisions ont été faites (ou ce n'est pas un système de fichiers trivial comme FAT).

+0

Il est sur un lecteur FAT32, et je suis allé avec un éditeur hexadécimal et vérifié qu'il y a un certain nombre de répertoires supprimés et des fichiers encore présents. Avec plusieurs centaines d'entrées d'un nom de lettre (supprimé) je suppose que je vais devoir itérer en restaurant chacun d'entre eux puis en vérifiant chaque répertoire supprimé et l'entrée de chaque fichier et vérifier les 4 premiers octets de chaque fichier pour voir si c'est un .jpg valide. – Fred

+0

Droit, et ce processus fastidieux est ce que la plupart des logiciels de récupération de fichiers fait pour vous. Je suggère fortement d'écrire une solution de code (un simple driver FAT32 peut être fouetté en quelques heures, au cas où vous ne le sachiez pas), le faire à la main avec un éditeur hexadécimal pourrait être bien plus douloureux. –

Questions connexes