IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

affichage de plusieurs textes dans un memo


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Inscrit en
    Juillet 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 7
    Par défaut affichage de plusieurs textes dans un memo
    bonjour,
    mon grand problème c'est d'afficher plusieurs textes unicode dans un memo, je suis arrivée à afficher un seul texte unicode dans un memo avec ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    void __fastcall TFORM1::Ouvrir1Click(TObject *Sender)
    {        if (this->TOpenDialog1->Execute())
                   {
    		 int nbFichiers = this->TOpenDialog1->Files->Count;
    		 for(int i=0; i<nbFichiers ; i++)
    		    {
    			AnsiString  File = this->TOpenDialog1->Files->operator [](i);
    			if(FileExists(File))
    				this->TMemo1->Lines->LoadFromFile(File);
     
                        }
                   }
    }
    et je suis arrivée avec le code ci-dessous à afficher plusieurs textes mais en caractères bizarres (c'est à dire il n'a pas connu les caractères unicodes)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    void __fastcall TMIRACL::Ouvrir1Click(TObject *Sender)
    {if (this->TntOpenDialog1->Execute())
          {
    	int nbFichiers = this->TntOpenDialog1->Files->Count;
    	for(int i=0; i<nbFichiers ; i++)
    	   {
    	      WideString File = this->TntOpenDialog1->Files->operator [](i);
                  wchar_t ph[800];
    	      FILE *doc ;
    	      doc =  _wfopen(File.c_bstr(),L"r");
    	      while(fgetws(ph,800,doc))
    		   this->TntMemo1->Lines->Add(ph);
    	      fclose(doc);
    	   }
           }
      }
    est ce que quelqu'un peut m'aider svp

  2. #2
    Expert confirmé

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 033
    Billets dans le blog
    12
    Par défaut
    en fait il y a un flag à passer à fopen (ou _wfopen, ou _tfopen) pour ouvrir le fichier en Unicode, en plus du mode de lecture : "ccs=UTF-8".
    Dans ton cas ça donnerait donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    doc = _wfopen( File.c_bstr(), L"r, ccs=UTF-8");
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert à rien, mais qu'il est joli (des fois) : ProceduralGenerator (Génération procédurale d'images, et post-processing).

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 7
    Par défaut
    merci bien pour ta réponse, mais je ne sais pas pourquoi lorsque j'ai ajouté ce flag,ça m'a fait sortir un message d'erreur violation d'accès à l'adresse...
    donc j'ai pas pu encore voir si ça marche l'unicode dans le résultat.

  4. #4
    Expert confirmé

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 033
    Billets dans le blog
    12
    Par défaut
    vérifie que tu as bien réussi à ouvrir ton fichier, car pour l'instant tu ne testes pas, donc _wfgets plantera si ton "doc" est nul.
    Par contre, je ne vois pas pourquoi il n'arriverait pas à ouvrir ton fichier.
    Si vous ne trouvez plus rien, cherchez autre chose...

    Vous trouverez ici des tutoriels OpenGL moderne.
    Mon moteur 3D: Castor 3D, presque utilisable (venez participer, il y a de la place)!
    Un projet qui ne sert à rien, mais qu'il est joli (des fois) : ProceduralGenerator (Génération procédurale d'images, et post-processing).

  5. #5
    Membre du Club
    Inscrit en
    Juillet 2010
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 7
    Par défaut
    je pense que c'est vrai ce que vous dites, car lorsque j'ai fait un point d'arrêt j'ai vu qu'il plante sur _wfgets, j'ai vu aussi que le contenu de doc est bizarre, pourquoi il peut ne pas arriver à lire doc tant que la valeur de File est juste.
    voila la valeur de doc pendant l'exécution:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    doc      :00000004
       curp  ????
       level  ????
       bsize  ????
    ...
    si vous comprenez ceci, aidez moi à le comprendre svp

Discussions similaires

  1. Ajouter du text dans un Memo
    Par kmaniche dans le forum C++Builder
    Réponses: 2
    Dernier message: 07/12/2006, 19h38
  2. Affichage de plusieurs images dans dans un Timage
    Par Petzouille57 dans le forum Delphi
    Réponses: 1
    Dernier message: 19/10/2006, 16h16
  3. Affichage différent selon texte dans une case
    Par pingoo78 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 22/11/2005, 16h32
  4. Affichage d'un texte dans la barre d'état!
    Par chuart dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 12/04/2005, 12h47
  5. Réponses: 14
    Dernier message: 08/01/2005, 16h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo