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

MFC Discussion :

éciture de flotant dans un fichier texte


Sujet :

MFC

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 12
    Par défaut éciture de flotant dans un fichier texte
    Bonjour,

    j'écris des données de type float dans un fichier texte. Pour cela j'utilise la classe CFile et la fonction write pour enregistrer mes données avec un formatage %.1f.

    Voilà le problème : Gnuplot est censé lire mon fichier texte pour tracer des courbes. Cependant mes données apparaîssent sous cette forme 20,2 et non pas 20.2 , et Gnuplot interprète mon 20,2 en 20 (troncature)....bref c'est la mémerde...

    Est il possible, avec un formatage spécifique d'enregistrer mon float avec un point et non une virgule : . Perso, je sèche....

    Sinon une idée autre que de remplacer tous les ',' par '.' ???

    Merci

  2. #2
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut ,mets plutot %3.1f

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 12
    Par défaut
    je ne comprend pas : ça ne va pas changer ma virgule en point???

  4. #4
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    a ma connaissance sprintf ou printf ne tiens pas compte du reglage du poste pour le . ou la , ,ton probleme doit etre un pb d'affichage du a ton format.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 12
    Par défaut
    a ma connaissance sprintf ou printf ne tiens pas compte du reglage du poste pour le . ou la , ,ton probleme doit etre un pb d'affichage du a ton format.
    je n'ai rien compris
    En fait j'utilise un CString avec la commande format, mais je pense que c'est un équivalent à printf.

    je crois que je vais faire une routine pour transformer les ',' en '.'

  6. #6
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Par défaut
    C'est un problème lié aux locales (par contre je ne sais pas si la solution peut s'appliquer aux CFile, il faudra peut-être utiliser les flux standards).

    Une recherche sur le forum C++ devrait te donner de quoi résoudre ton problème.

    Sinon tu peux aussi feinter, et remplacer les '.' par des ',' après ecriture dans ton fichier.

  7. #7
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    tu peux montrer ta routine d'ecriture avec le formattage ?

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 12
    Par défaut
    Bonjour, en fait Loulou24 a raison. C'est un pb lié au locales!!
    une recherche dans le forum C++ et hop! voilà ce qu'il fallait rajouter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setlocale( LC_NUMERIC, "English_USA.1252" );
    et les ',' se transforment en '.' (non pas par magie )

    voici deux liens. Le 1er sur MSDN:
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_crt_setlocale.2c_._wsetlocale.asp
    un lien vers le forum C++
    http://www.developpez.net/forums/vie...ghlight=locale

  9. #9
    Rédacteur
    Avatar de farscape
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2003
    Messages
    9 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 9 055
    Par défaut
    salut,
    ce qui est etonnant c'est que ton parametrage par defaut soit , et non le point .

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 12
    Par défaut
    p'tete qu'il existe une fonction getlocale qui me renverra le paramétrage par défaut
    En tout cas, c'est un win xp ed fmiliale en français....

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/07/2004, 09h30
  2. Réponses: 2
    Dernier message: 02/03/2004, 19h38
  3. Réponses: 3
    Dernier message: 22/02/2004, 20h09
  4. [LG]rechercher dans un fichier texte
    Par BadFox dans le forum Langage
    Réponses: 11
    Dernier message: 01/12/2003, 15h57
  5. recherche de doublons dans un fichier texte
    Par portu dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 07/10/2003, 14h13

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