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 Java Discussion :

Encodage iso-8859 vers encodage ASCII


Sujet :

Langage Java

  1. #1
    Membre averti
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juillet 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2008
    Messages : 18
    Par défaut Encodage iso-8859 vers encodage ASCII
    bonjour,

    Lors d'un traitement de données texte (encodage iso-8859-1) j'ai besoin de convertir les minuscules en majuscules (upperCase), avant intégration AS400
    Malheureusement les "Majuscules accentuées" tel É À ...etc posent problème
    (non reconnu par le système ...normal).

    J'ai essayé de "forcer" l'encodage ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    new java.lang.String(machaine.toUpperCase(Locale.ENGLISH
    ))
    ....bon

    j'ai parcouru l'excellent post , mais je n'arrive toujours pas à "convertir " un "é,è" en entrée vers un "E" !

    Je pourrais écrire une petite fonction de "codage" mais cela doit sûrement être possible avec les méthodes "générique" java.lang
    De plus certaines sources en entrée avoisinent les 1.5go alors je préfèrerais des methodes déjà éprouvées ..

    merci de votre aide
    ++

  2. #2
    Membre averti
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juillet 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2008
    Messages : 18
    Par défaut
    bon ,

    j'ai testé une solution avec la méthode replace(char,char) , qui de toute façon ne modifie absolument rien !

    il doit y avoir un "problème" d'encodage du source texte (mais je ne suis pas maître de l'origine de ceux-ci).

    En regardant la valeur Hexa du "é" dans mon fichier texte => E9 (233) !

    Il faudrait que j'ai une methode qui reconnait et transforme ces caractère accentué (une regex !!?)

    j'ai bien lu que
    Si (tu) as un problème d'affichage cela vient de ta chaine qui est mal lu, par exemple si elle provient d'un fichier encodé en UTF8 que (tu) lirais comme un fichier iso-latin1...
    et c'est bien cela je pense mon problème .... mais ce n'est pas une solution pour mon As400 ...!

    je dois sans doute "traiter" le fichier d'origine !?

    ....

  3. #3
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354

  4. #4
    Membre averti
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juillet 2008
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2008
    Messages : 18
    Par défaut
    merci pour ta réponse

    le problème venait de l'encodage fichier lui-même
    un visu avec un éditeur ne semblait ne poser aucun problème mais
    après une petite ligne de commande linux

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $ iconv -f ISO8859-1 monfichier > out.conv
    les caratères accentuée en été enfin reconnu lors de l'analyse et de l'utilisation de la méthode replace(old char, new char)...

    N'empêche que la classe Normalizer proposée avec java 6 va surêment beaucoup m'aider (et j'aurais dû lire la FAQ jusqu'à la fin ....)
    ++

Discussions similaires

  1. Encodage ISO-8859-1/UTF-8 par défaut
    Par mirabelle54 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 11
    Dernier message: 24/09/2012, 15h09
  2. [MySQL] Problème encodage ISO-8859-1
    Par benthebest dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 10/02/2010, 13h27
  3. Encodage iso-8859-1
    Par debo41 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 11
    Dernier message: 11/09/2009, 16h19
  4. [PHP 5.2] Encodage ISO-8859-1 - UTF-8
    Par Shirraz dans le forum Langage
    Réponses: 9
    Dernier message: 04/05/2009, 09h07
  5. [XHTML] Encodage ISO 8859-1 ou UTF-8 ?
    Par Néandertal dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 29/08/2008, 19h09

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