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

Langage Pascal Discussion :

Caractères accentués en I/O


Sujet :

Langage Pascal

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2019
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Caractères accentués en I/O
    Bonjour,

    Pardon pour cette question de débutant, mais je galère pas mal avec les caractères accentués.
    Quelqu'un peut-il me dire comment manipuler des chaines de caractères accentuées correctement en lecture/écriture de fichier ?
    Le type String les transforme en hiéroglyphes. Le type WideChar est mieux mais il n'a pas de longueur fixe ?
    Comment faire pour écrire un fichier constitué de disons x lignes de disons 3 mots de disons 20 lettres en caractères accentués ?
    Sachant que ledit fichier doit être re-lisible ensuite.
    En fait, je crois que ma question c'est comment déclarer un string[20] qui accepte et restitue les caractères accentués)
    Merci par avance !

  2. #2
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    Bonjour !

    Pourriez-vous en dire un peu plus sur ce que vous voulez faire ? De quel genre de fichier s'agit-il ?
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2019
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Roland Chastain Voir le message
    Bonjour !

    Pourriez-vous en dire un peu plus sur ce que vous voulez faire ? De quel genre de fichier s'agit-il ?
    Bonjour, Merci de votre attention, je souhaite simplement écrire (et pouvoir relire) dans un fichier des chaines de caractères contenant des caractères accentués.
    Dans l'exemple ci-dessous, si j'utilise le type STRING pour la variable texte, les caractère accentués sont mal compris et mal enregistrés.
    Par exemple si on saisit le mot "élémentaire", il va être traduit en ",l,mentaire"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Var Fichier : Text;
         texte : string[50];
    Begin
    Assign(Fichier,'d:\jour1.txt');
    Rewrite (Fichier);
    Writeln('Bonjour. Parlez-moi. Bye pour terminer.');
    Repeat
    	readln(texte);
    	if texte<>'bye' then
    	   Writeln(Fichier,Texte);
    Until texte='bye';
    Close(Fichier);

  4. #4
    Rédacteur/Modérateur

    Avatar de Roland Chastain
    Homme Profil pro
    Enseignant
    Inscrit en
    Décembre 2011
    Messages
    4 072
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4 072
    Points : 15 462
    Points
    15 462
    Billets dans le blog
    9
    Par défaut
    Si vous lisez le fichier avec le même programme que vous avez utilisé pour le créer, je pense que le problème ne se pose pas : les caractères accentués sont correctement restitués. Le problème apparaît (je pense) lorsque vous ouvrez le fichier en question avec un éditeur de texte. Je me trompe ?

    J'ai fait un essai, avec une chaîne de type string, d'un programme lisant et écrivant dans la console : je n'ai pas rencontré de problème, quelles que soient les options de compilation utilisées. Les caractères s'affichaient correctement dans tous les cas. En revanche, suivant l'option utilisée, le contenu réel du fichier variait (je veux dire la valeur des octets) ; mais au bout du compte le mot s'affichait toujours correctement.

    Je me demande si l'option de compilation -Fcutf8 ne règlerait pas votre problème.
    Mon site personnel consacré à MSEide+MSEgui : msegui.net

  5. #5
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2019
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    C'est étrange en effet.
    J'ai changé mes types string en type WideString et alors tout fonctionne bien.
    Mais en remplaçant mes types WideString en string à nouveau (retour à la situation antérieure), tout fonctionne bien aussi !!
    Hier, j'avais des hiéroglyphes dans mes fichiers, aujourd'hui tout est nickel. A n'y rien comprendre.
    Merci cependant pour votre aide !

Discussions similaires

  1. Caractères accentués avec <html:link>
    Par papysam dans le forum Struts 1
    Réponses: 5
    Dernier message: 25/05/2007, 15h18
  2. Chaines avec caractères accentués dans interbase
    Par Tsimplice dans le forum Bases de données
    Réponses: 4
    Dernier message: 08/03/2004, 17h12
  3. Chaînes avec des caractères accentués dans Interbase
    Par François Marliac dans le forum Bases de données
    Réponses: 2
    Dernier message: 04/03/2004, 22h39
  4. [PostgreSQL] Les caractères accentués ?
    Par yacomor dans le forum Requêtes
    Réponses: 2
    Dernier message: 18/02/2003, 16h30
  5. insérer des caractères accentués INFORMIX/JDBC
    Par donde dans le forum Informix
    Réponses: 2
    Dernier message: 19/11/2002, 20h02

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