Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : visual c++ strings [ Archives / Au secours ] (zouippy)

vendredi 29 juillet 2005 à 10:37:38 | visual c++ strings

zouippy

Bon je vous explique mon problème rapidement:

J'ai fais un petit programme en MFC sous visual c++. Je récupère les donnée d'un fichier via une classe que j'ai défini. Parmis ces donnée se trouve un string. J'aimerais afficher le contenu de ce string dans un contrôle en changeant la valeur du Cstring associé à ce controle (m_str_name) puis en appelant UpdateData(FALSE);
Malheureusement le compilo me répond:

D:\C++\Project\Gta_save\Gta_save\Gta_saveDlg.cpp(1314) : error C2679: binary '=' : no operator defined which takes a right-hand operand of type 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >' (or there is no
acceptable conversion)

Voici le bout de code en question:

//Read informations:

   Save my_save_file("C:\\....monfichier.txt");


   my_save_file.GetName();
   my_save_file.GetMoney();

   m_str_name = my_save_file.current_name;
   m_long_money = my_save_file.current_money;

   UpdateData(FALSE);

Au passage j'ai aussi un autre problème sur ce même projet:

Pour l'instant le fichier qui est ouvert avec cette classe est toujours le même.    J'ai fais un CFileDialog(...); qui fonctionne très bien. J'aimerais bien stocker  la valeure retournée par GetPathName() dans une variable en vu d'une ouverture avec fopen(); mais je ne sais trop quelle type de variable choisir.

Merci de votre aide :)

vendredi 29 juillet 2005 à 10:56:53 | Re : visual c++ strings

buno

pour le premier probléme: le code n'est pas suffisant... mais tu as avoir m_str_name et my_save_file.current_name de types différents.

pour le second: pourquoi pas un char *?

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...

vendredi 29 juillet 2005 à 11:08:22 | Re : visual c++ strings

zouippy

ET bien oui, commme je l'ai dis plus haut, m_str_name est un Cstring propre à MFC tandis que my_save_file.current_name est un string.

J'ai essayé avec un char* de cette manière:

if(m_ldFile.DoModal() == IDOK) {

       //Get path:
       char* m_char_path = m_ldFile.GetPathName();

//...
}

Mais le compilo me répond: cannot convert from 'class CString' to 'char *'

vendredi 29 juillet 2005 à 11:16:44 | Re : visual c++ strings

Kaid

Essaye comme ca:

const char* m_char_path = m_ldFile.GetPathName().GetString();

Kaid - kaid.fr.st

vendredi 29 juillet 2005 à 11:23:13 | Re : visual c++ strings

buno

Réponse acceptée !
Ok, pardon, j'avais mal lu...
Du coup, ceci devrait marcher:

m_str_name.Format("%s",my_save_file.current_name.c_str());

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...

vendredi 29 juillet 2005 à 11:47:45 | Re : visual c++ strings

zouippy

Ta soluce marche buno. Mais pour le deuxième problème, quand je fais
const char* m_char_path = m_ldFile.GetPathName().GetString(); le compilo me répond:

error C2039: 'GetString' : is not a member of 'CString'
        c:\program files\microsoft visual studio\vc98\mfc\include\afx.h(368) : see declaration of 'CString'

vendredi 29 juillet 2005 à 14:59:28 | Re : visual c++ strings

Kaid


Désolé zouippy, ca fait quelques années que j'ai arrêté les MFC. Tu peux peut-être remplacer GetString() par GetBuffer().

Kaid - kaid.fr.st

vendredi 29 juillet 2005 à 15:26:28 | Re : visual c++ strings

zouippy

Non toujours pas... Erreur windows de base... :( Merci quand même :)

vendredi 29 juillet 2005 à 23:40:35 | Re : visual c++ strings

zouippy

Réponse acceptée !
J'ai trouvé la réponse à mon problème grâve à la doc en ligne MSDN. Il suffisait enfait de placer le filepath dans un CString :)



Cette discussion est classé dans : visual, string, file, my, save


Répondre à ce message

Sujets en rapport avec ce message

Classe string sous Visual C++ 6.0 : j'y comprend vraiment rien [ par cresus18 ] salut tout le mondeJe passe de Dev-C++ 4.0 à Visual C++ 6.0et je n'arrive pas du tout à utiliser la classe string !!!un simple programme comme celui l probleme a la con [ par flatou ] slt a tousj'ai une fenetre, avec un menu. j'ai un identifiant de menu qui est IDR_FILE_SAVEa un moment dans mon programme, je dois executé le code qui afficher un type string [ par GIRAFE ENRHUMEE ] Dans Visual C++, on m'affiche l'erreur que les flots >) ne sont pas surdéfinis pour recevoir une opérande droite de type string.Dans Dev C++, je n'ai recuperation de string [ par bob82fr ] hi,j'aimerais recupere un string apres une chaine que j'ai identifie.J'ai un fichier myfile.txt, dans lequel on trouve:cacheMissRate:52pross:200...J'a string [ par blueburry ] bonjour,je suis en train de programmer sur visual c++.g un probleme avec les  string, je fais:char nom[26];char sport[26]; string nom = &nom[0];string string et + [ par blueburry ] bonjour,je suis en train de programmer sur visual c++.g un probleme avec les  string, je fais:char nom[26];char sport[26]; string nom = &nom[0];string wxwidget et visual studio 2005 galere [ par neufcentimetre ] bonjour a tousje viens de mettre a wxwidget mais voila j'ai des problemesj'ai suivi le tutoriel pour wxwidget 2.6.1 avec visual studio 7 ,moi j'ai le problème conversion string to char* [ par totoscill ] Bonjour,je veut récupérer des infos dans un fichier. Pour cela il me faut convertir mes lignes récupérer "string" en "char*". Voici mon code pour cett Comment convertir un String en Int en visual C++ SVP [ par mikacontact ] Notre probleme comme il est dit dans le sujet, c'est de convertir un string en int.Merci d'avance problemes avec visual c++ 2005 [ par darkos ] salut a tous! j'ai quelque problemes avec visual C++ 2005 (Express Edition):comment convertir un string en int.fopen ne fonctionne pas, je fait  if( f


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version


LG KP501

Entre 9€ et 159€


Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,967 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.