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 :

Linux et le français


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Étudiant
    Inscrit en
    Avril 2005
    Messages
    30
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2005
    Messages : 30
    Par défaut Linux et le français
    Bonjour à vous,

    je sollicite votre aide car je suis au bord de la crise de nerfs...

    Voilà mon problème:

    Je génére du HTML et des images à partir de fichier C (éxécuté en tant que CGI sur mon serveur apache). Le problème est que les accents ne passent pas . J'ai passé mes locale en FR via la fonction setlocale(LC_ALL,"fr_FR.UTF-8")

    De ce fait lorsque j'affiche une date via strftime, la date sort bien en français mais pour le mois de décembre j'obtiens un A et un S bizarre (accentués). Je me doute que c'est du à l'encodage mais je ne vois pas comment réussir à afficher cette chaîne comme il faut.

    Aidez moi svp

    Archange

  2. #2
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Quel codage veux-tu? Pour ISO-8859-1 (alias Latin1)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setlocale(LC_ALL,"fr_FR");
    Pour ISO-8859-15 (alias Latin9, alias Latin0)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    setlocale(LC_ALL,"fr_FR@euro");
    Generalement, on s'arrange pour fixer la locale dans l'environnement (variables LC_ALL etc) et on utilise
    Tu peux verifier le resultat de l'appel pour savoir quel locale est reellement utilise.

  3. #3
    Expert confirmé
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 538
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 538
    Par défaut
    Oui mais cela dépend également du type de donnée utilisé pour gérer les chaines de charactères.
    char * gère mal ou pas du tout les accents.
    Il faut utiliser des types sous Linux qui gèrent Unicode par exemple.

  4. #4
    Membre Expert
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par défaut
    Avec la locale que tu as indiqué, strftime te sors surement une chaine en UTF-8.. Si tu veux envoyer cette chaine au navigateur, il faudrait qu'il s'attende à recevoir de l'utf-8

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    printf ("Content-type : text/html; charset=utf-8\r\n\r\n");
    Cela dit, chuis contre l'utf8

  5. #5
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Citation Envoyé par Mat.M
    Oui mais cela dépend également du type de donnée utilisé pour gérer les chaines de charactères.
    char * gère mal ou pas du tout les accents.
    Mince... j'utilise Linux depuis 1994 et j'ai jamais remarqué. Il va falloir que j'aille changer mes programmes.

    Il faut utiliser des types sous Linux qui gèrent Unicode par exemple.
    Unicode pour du français, c'est un peu usine à gaz.

  6. #6
    Membre averti
    Étudiant
    Inscrit en
    Avril 2005
    Messages
    30
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2005
    Messages : 30
    Par défaut
    Merci à vous.

    J'ai changé ma locale de fr_FR.UTF-8 à fr_FR et tout est rentré dans l'ordre pour ma génération d'image

    Une grosse épine retiré du pied...

    Si j'ai besoin de vous je vous recontacte

    Bonne journée

    Archange

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

Discussions similaires

  1. Auto-formation Linux en bon français
    Par mafilek dans le forum Linux
    Réponses: 4
    Dernier message: 11/07/2007, 14h39
  2. Problème eclipse en français sous Linux
    Par Arthuris dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 04/05/2007, 15h41
  3. Cours Tutoriels Programmation Systeme en C sous Linux en Français
    Par hocine1978 dans le forum Administration système
    Réponses: 3
    Dernier message: 19/12/2006, 23h11
  4. Eclipse en français sous Linux
    Par pirouette_07 dans le forum Eclipse Java
    Réponses: 6
    Dernier message: 04/07/2006, 11h13

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