Bonjour à tous,
Un problème à s'arracher les cheveux... J'ai l'habitude de programmer en C++ avec vi et g++ sous Linux (oui, je sais, il y a mieux que vi...), et j'ai réalisé un petit programme qui marche impeccable sous Linux. J'ai voulu le passer sur Visual C++ sous Windows, tout compile mais il ne veut pas m'ouvrir ou lire un fichier avec fstream sauf si je code le chemin en dur dans le code. Impossible de le stocker dans un char *. Exemple :
Cas qui marche :
Cas qui ne marche pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ifstream fichier("C:/Users/Jerome/Documents/Visual Studio 2015/Projects/quiutilise/Debug/quiutilise.log", ios::app | ios::binary); if (!fichier) { etc. pas exécuté, tout fonctionne}
J'ai tout essayé, les chemins relatifs avec juste "quiutilise.log", de remplacer les "/" par des "\" et des "\\", de protéger les espaces avec "\ ", bref, j'ai essayé à peu près tout, mais autant ça marche parfaitement sous Linux, autant, sous Windows, il n'accepte que le chemin en dur et pas dans une variable (sauf que ça doit être dans une variable car après je vais lire le chemin depuis un fichier).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 char endur[200] = "C:/Users/Jerome/Documents/Visual Studio 2015/Projects/quiutilise/Debug/quiutilise.log"; ifstream fichier(endur, ios::app | ios::binary); if (!fichier) { etc. exécuté, il ne reconnaît pas le chemin !}
Merci pour votre aide.
Jérôme.
Partager