Je planifie un petit projet juste pour m'amuser, donc je ne sais pas si je vais utiliser C++ ou JAVA pour le moment. Donc, je demande des informations pour ces deux langues.Comment lire un fichier spécifique s'il a été déplacé
Maintenant, je vais décrire la situation, ce qui est possible de se produire. Disons que j'ai le fichier C:\Users\T3\My Documents\Downloads\My file.txt
. Faire un flux de programme Je sauvegarde ce répertoire et je l'utilise pour obtenir le contenu de ce fichier. Mais l'utilisateur peut déplacer ce fichier dans un autre répertoire, qu'il soit C:\Users\T3\My Documents\Files\My file.txt
. Maintenant, si j'utilise le répertoire précédent, je n'atteindrai pas ce fichier. Mais comme je sais que le fichier reste au même endroit sur le disque, appelons le 0x1234567890
. Le déplacement de fichier modifie simplement certaines données dans le système de fichiers NFTF/ext4/... ou certains.
Il y aurait une ou deux situations problématiques:
- Si le fichier a été déplacé vers un autre disque. Il est impossible de l'atteindre.
- Si le fichier a été déplacé vers une autre partition du même disque. Je ne sais pas si dans ce possible pour l'atteindre, mais il pourrait être.
Ma question est comment obtenir cette adresse sur le disque (je l'ai appelé 0x1234567890
) et comment lire les données du fichier en connaissant cette adresse.
Vous pouvez uniquement ouvrir un fichier avec un chemin d'accès à l'aide de l'API de système de fichiers standard. Les outils de récupération fonctionnent à un niveau inférieur. – user2246674
Ne pouvez-vous pas verrouiller le fichier pendant que vous l'utilisez jusqu'à ce que vous ayez terminé? – Prix
@Prix Je ne peux pas verrouiller le fichier parce que l'utilisateur peut changer le répertoire du fichier pas dans le déroulement du programme. – ST3