5 votes

ifstream ouvrir fichier C++

J'ai un problème avec la fonction ifstream open. Je crée une application sous linux dans netbeans. Mon code est le suivant :

ifstream file;
file.open(path);
file.is_open()
.
.
.

et le problème est dans le chemin. Lorsque j'utilise ~/Desktop/file.txt et que je lance l'application, le fichier n'est pas ouvert. Mais lorsque je débogue l'application, tout fonctionne bien. Avez-vous des conseils pour résoudre ce problème ? Merci

6voto

Julian Points 834

Le nom de chemin ~/Desktop/file.txt ne correspondra pas à un fichier à moins que le caractère tilde n'ait été développé, ce qui est généralement fait par le shell avant de le transmettre au programme. Si vous l'appelez directement, alors vous devez utiliser soit un nom de chemin complet

/home/user/Desktop/file.txt

ou un chemin relatif

./Desktop/file.txt

Je soupçonne le débogueur de développer le nom du fichier pour vous être utile avant de le transmettre au programme.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X