Prob ouv fichier avec chemin absolu c++
Eti38
Messages postés
57
Statut
Membre
-
overcode Messages postés 128 Statut Membre -
overcode Messages postés 128 Statut Membre -
Bonjour,
Je code en c++:
Je souhaite ouvrir un fichier par la primitive ofstream.
Je lui fournit le nom du fichier a ouvrir par une macro définit en début de fichier.
Le programme marche quand je lui donne le chemin relatif.
Mon probleme est que maintenant je souhaite lancer ce programme "a distance":
J'ai changé la macro et lui ait donné comme valeur le chemin absolu du fichier:
Ca ne marche pas
Cela vous rapelle quelquechose????
Je code en c++:
Je souhaite ouvrir un fichier par la primitive ofstream.
Je lui fournit le nom du fichier a ouvrir par une macro définit en début de fichier.
Le programme marche quand je lui donne le chemin relatif.
Mon probleme est que maintenant je souhaite lancer ce programme "a distance":
J'ai changé la macro et lui ait donné comme valeur le chemin absolu du fichier:
Ca ne marche pas
Cela vous rapelle quelquechose????
Configuration: Linux Mozilla 1.8.1.14
13 réponses
-
-
Un autre programme se situant autre part ds l'arborescence doit lancer le premier...
(Fork,execve,....) -
Je ne me rappelle plus très bien de ça en C++, mais que reçois-tu quand ça ne marche pas ? open te lance une exception ou quelque chose comme ça ?
Ton fichier n'est pas ouvert par un autre process ? Parce qu'en écriture (ofstream) il n'y a qu'un process à la fois -
HA oui, j'ai ommis un détail qui peut avoir de l'importance.
L'autre programme est en c....
j'avais vu ds le man d'execve quon pouvait lancer un script!
Peut-être ce que je vais devoir faire....
Quand ca ne marche pas, ca bloque juste... il boucle peut-etre quelquepart.. -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
mon code:
ofstream file(......);
a la suite de cela, file vaut zero.
cela signifie que l'ouverture n'a pas eu lieu... -
Ton nom de fichier contient-il un caractère blanc ou spécial ?
-
Le seul caractere special est le ~ indiquant la racine..
il me semble que ce n'est pas problématique...
me trompe-je???????? -
oaui, une erreur de "\" non protégé, ou d'espace.
donne nous ta macro, ton chemin absolue, et l'appel à la macro.
(d'ailleur les macro, c'est à méga éviter) -
Fais voir le nom de fichier, ou le bout de programme (macro + ofstream)
-
en fait j'ai pas tout dit.............;
je vous la refait avec la version qui marche:
la macro: "./central_memory/file"
comme vous l'aurais compris,je "simule" une memoire centrale dont les noms de fichiers sont fileN
donc je concatene une chaine A contenant ma macro ac celle contenant le numero du fichier a acceder (B)
Soit la concatenation de A et B donne C:
puis j'ouvre le fichier de nom C....
voila j'espere que vous avais compris.... -
Pour le caractère ~, je ne suis pas sûr. Tu sauve le source en UTF-8, ou autre chose ?
-
-
central_memory est un dossier. Peut-être que tu t'es trompé dans le chemin complet, car la création d'un fichier en écriure par ofstream ne crée pas les répertoires intermédiaires, et donc renvoie un flux nul si le chemin n'existe pas.
Donne nous plus d'indications.