Traduire un string en ANSI

floindahouse1 Messages postés 10 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 6 mars 2004 - 3 mars 2004 à 21:28
floindahouse1 Messages postés 10 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 6 mars 2004 - 4 mars 2004 à 16:17
en fait je voudrais convertir un chemin par exemple C:\floindahouse\rentrecheztoi en C:\\floindahouse\\rentrecheztoi pour l'utiliser dans des fonctions.

un petit exemple de source serait le bien venu !

7 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
3 mars 2004 à 22:02
Tu es bien certain d'avoir besoin d'ajouter un '\' ???
"C:\\floindahouse" ne se met ainsi seulement que quand on l'ecrit dans le module de code en constante string car '\' est un code d'echappement en C.

ciao...
BruNews, Admin CS, MVP Visual C++
0
floindahouse1 Messages postés 10 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 6 mars 2004
3 mars 2004 à 22:39
#include
#include <fstream>
#include <string>
#include <windows.h>
using namespace std;

void main()
{
fstream fl("C:\\test.txt", ios::out|ios::app);
fl.write("hello",5);
//char destination[20];
//string source="c:\\Windows";
cout<<"salut";
fl.close ();
CopyFile("C:\\test.txt","C:\\test.exe", false);

}

Dans cette exemple je voudrais remplacer C:\\test.txt par un pointeur sur type directory=C:\\test.txt. Histoire de pouvoir indiquer l'emplacement du fichier à lZaide d'une variable.
La notation "C:\test.txt" marche pour la fonction fstream; mais pour la fonction de win il faut l'écrire comme ca C:\\test.txt. :,-(
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
3 mars 2004 à 22:52
Je repete derniere fois:
Notation avec double '\' est dans les constantes char que soit pour win ou autre n'y entre pour rien, c'est pour le COMPILO qui connait '\' comme caractere d'echappement.

ciao...
BruNews, Admin CS, MVP Visual C++
0
floindahouse1 Messages postés 10 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 6 mars 2004
3 mars 2004 à 23:19
Ne le prend pas mal mais je suis un peu newbee et je comprends pas ce que tu veux me dire.

En tout cas la fonction CopyFile(source, destination, bool) ne fonctionne pas si c'est pas \\.

Et puisque je peux pas écrire C:\\test.text dans une constante string source | destination je cherche un moyen de le traduire genre avec une fonction AnsiString.

En tout cas merci d'avoir essayé !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
floindahouse1 Messages postés 10 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 6 mars 2004
4 mars 2004 à 15:35
jZai peut etre mal expliqué:

jZutilise une fonction du genre GetSystemDirectory et il me donne le resultat sous cette forme: C:\floindahouse\system
mais pour pouvoir lZutiliser dans dZautre fonction il faut quZil soit traduit en C:\\floindahouse\\system.

merci de me donner une solution
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
4 mars 2004 à 15:53
Absolument NON !!!
Aucune traduction du resusltat de GetSystemDirectory a faire.

char mystr[] = "C:\\floindahouse\\system";

fais une analyse des octets de mystr et tu verras que contient:
C:\floindahouse\system

ciao...
BruNews, Admin CS, MVP Visual C++
0
floindahouse1 Messages postés 10 Date d'inscription lundi 19 janvier 2004 Statut Membre Dernière intervention 6 mars 2004
4 mars 2004 à 16:17
ok ! Merci pour ton aide !
:) CZest sympa !
0
Rejoignez-nous