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

 Delphi Discussion :

afficher texte unicode


Sujet :

Delphi

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 37
    Points : 38
    Points
    38
    Par défaut afficher texte unicode
    Bonjour,
    j'aimerais savoir comment afficher du texte unicode dans un memo.

    Merci

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Bonjour, si tu as D2009 alors par défaut les TMemo s'affichent en Unicode sinon ce n'est pas possible avec les composants par défaut, il te faut soit une bibliothèque de composants unicode (comme chez TMS par exemple) ou bien recoder ton TMemo pour qu'il utilise exclusivement des WideString plutôt que des String mais là bon courage.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Octobre 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 37
    Points : 38
    Points
    38
    Par défaut
    j'ai trouvé une solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    memory := TMemoryStream.Create;
         GetMem(sBuf, memory.Size+1);
            memory.LoadFromFile(sFileName);
       memory.Seek(0,soFromBeginning );
     
     
      memory.Read(sBuf ^, memory.Size);
      memo1.Lines.Add(WideCharToString(sBuf));
      FreeMem(sBuf, memory.Size);
      FreeAndNil(memory);
    le texte s'affiche bien cependant un point d'interrogation vient s'ajouter, je ne vois pas comment résoudre ce problème

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Certes cette solution te permet de charger un fichier unicode mais ça ne règles en rien ton problème TMemo est prévu pour fonctionner avec des String (Ansi = 1 octet) et fait donc appels aux API de type Ansi et non pas Unicode ce qui fait que ton texte unicode ne pourra jamais être affiché correctement car Windows s'attend à lire des caractères sur 1 octet et pas 2.

  5. #5
    Nouveau membre du Club
    Inscrit en
    Octobre 2008
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Octobre 2008
    Messages : 37
    Points : 38
    Points
    38
    Par défaut
    je suis passé par cette méthode celle-ci fonctionne très bien avec un memo.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    memo:=TMemoryStream.create();
    liste:=TStringList.create();
    memo.LoadFromFile(destination+rech.name);
    memo.Seek(0, soFromend);
    contenu := #0000;
    memo.Write(contenu, sizeof(contenu));
    char := memo.Memory;
    if char^ = #$FEFF then
    begin
      Inc(char)
    end;
    liste.text:=WideChartoString(char);
    Merci pour votre aide ..

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JTabbedPane] afficher texte étiquette bas en haut.
    Par spoutyoyo dans le forum Agents de placement/Fenêtres
    Réponses: 11
    Dernier message: 07/07/2009, 17h46
  2. [HTMLEditorKit] afficher texte html dans excel
    Par Invité dans le forum Composants
    Réponses: 1
    Dernier message: 23/08/2005, 10h43
  3. Afficher texte
    Par mune dans le forum MFC
    Réponses: 1
    Dernier message: 19/05/2005, 00h56
  4. [JButton] Afficher texte en survolant bouton.
    Par Galima dans le forum Composants
    Réponses: 2
    Dernier message: 04/06/2004, 22h21
  5. afficher texte avec retour chariot aprèq requète sql
    Par frenchy371 dans le forum Requêtes
    Réponses: 2
    Dernier message: 07/01/2004, 17h33

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