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

Grails Java Discussion :

Problème d'encodage : ANSI => UTF-8


Sujet :

Grails Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 16
    Points : 9
    Points
    9
    Par défaut Problème d'encodage : ANSI => UTF-8
    Bonjour à tous,

    Suis désolé de vous déranger encore une fois!!!
    J'ai mis en place un contrôleur "UploadTxtFile" afin de pouvoir importer
    des éléments dans ma database : Ok

    Une fois l'upload effectuée, je m'apperçois dans ma list.gsp que j'ai des problèmes d'encodage avec les "é,è,à": bref, tout ce qui est accent.
    J'ai essayé de vérifié le format d'encodage du fichier et ce dernier est en ANSI.

    Pourriez vous s'ils vous plait m'indiquer s'il existe des fonctions de conversion en Groovy/Grails ?

    J'ai voulu passé par le java classique en faisant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String myString = new String(it.getBytes(), "UTF-8")
    ou encore
    mais ca fonctionne pas.
    Pour ceux qui auront une idée à ce sujet, elle est la bienvenue!!

    Merci d'avance

    St@n

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    je connais pas groovy mais si tu ajoutais plutot le charset correct dès la lecture?

    genre
    request.getFile(...).inputstream.getText("UTF-8")

    ?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 16
    Points : 9
    Points
    9
    Par défaut
    Bonsoir tchize_,

    D'abord ,merci pour avoir donné suite à mon message
    si vite.

    Je viens juste d'essayer ta proposition : Cependant, une fois que le
    ...inputStream.getText("UTF-8), j'arrive plus à pouvoir appliquer mes fonctions groovy sur mon élément .

    J'ai donc utiliser le "getText(encoding)" sur l'instanciation du fichier : Aucune erreur mais toujours le problème d'accent.

    La question que je me pose, c'est s'il ne faudrait pas plutôt que je convertisse
    tout le fichier en "UTF-8" car l'opération j'ai faite précédemment n'est qu'une opération de lecture du genre :
    - Demander à Notepad++ d'<encoder> un fichier ANSI en UTF-8 et il te perd les accents mais en lui demandant de <convertir>
    en UTF-8 alors là tout est ok.

    Pardon pour le long texte et encore merci.
    Bonne soirée.

    St@n

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 35
    Points : 36
    Points
    36
    Par défaut
    Salut

    les fichiers que t'essayes d'uploader sont encodés en UTF-8?

    Nabil

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 16
    Points : 9
    Points
    9
    Par défaut
    Bonjour Nabil,

    A la base, les fichiers à encoder sont en ANSI.
    Je voudrai donc convertir en UTF-8 chaque fichier uploadé
    afin de pas avoir de soucis d'accents.

    St@n

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 35
    Points : 36
    Points
    36
    Par défaut
    ok Stan,

    peux tu nous donner le code de la méthode qui fait l'upload? Est ce que tu fais du traitement avant de sauvegarder dans la base de données?

    Nabil

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 16
    Points : 9
    Points
    9
    Par défaut
    Ok Nabil .

    Ci-dessous, l'action qui me permet d'uploader :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    def upload = {
     
                def f = request.getFile('fileUpload')
                def user = authenticateService.userDomain()
                def currentUser
                currentUser = PsToolsUser.get(user.id)
     
                if(getExtensionFromFilename(f.getOriginalFilename()).toString() != "txt")
                {
                    flash.message = "Please upload the -text- file type"
                    redirect (action : list)
                    return
     
                }
     
                if(!f.empty) {
     
                  flash.message = 'Your file has been uploaded'
                  new File( grailsApplication.config.keywordsFile.location.toString() ).mkdirs()
                  f.transferTo( new File( grailsApplication.config.keywordsFile.location.toString() + File.separatorChar + f.getOriginalFilename() ) )
     
                  def actualFile = new File(grailsApplication.config.keywordsFile.location.toString()+(f.getOriginalFilename()))
                  actualFile.splitEachLine(" "){ words->
                      words.each{
                                          def userKeywordsInstance = new UserKeywords(params)
                                          userKeywordsInstance.userKeyword = it
                                          addEngine(userKeywordsInstance)
                                          currentUser.addToUserkeyword(userKeywordsInstance)
                                          currentUser.save()
                                          userKeywordsInstance.save(flush: true)
                                }
                  }
                }
            else {
               flash.message = 'file cannot be empty'
            }
                redirect( action:list)
        }
    NB: En essayant une conversion de
    mes fichiers en UTF-8 avec notepad++,
    tout est ok mais le hic c'est de dire aux
    utilisateurs : "Veuillez utilisez notepad++ avant d'uploader vos fichiers "...

    A ++

    St@n

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 16
    Points : 9
    Points
    9
    Par défaut
    Bonjour à tous,

    Jusqu'aujourd'hui , j'ai pas pu résoudre ce problème
    d'encodage ...
    Quelqu'un a t'il pu trouver une approche permettant de le faire??
    Merci d'avance et à bientôt

    St@n

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 35
    Points : 36
    Points
    36
    Par défaut
    Salut Stan,

    désolé j'ai pas eu le temps ces derniers jours pour trouver une solution à ton problème, je regarde aujourd'hui et je te tiens informé

    Nabil

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 16
    Points : 9
    Points
    9
    Par défaut
    Hello Nabil,
    J'ai fais des recherches un peu partout ... hélas..
    Pour être plus productif, suis passé à autre chose et
    en parallèle je continue à chercher ...
    Merci pour ta disponibilité et à bientôt

    St@n

Discussions similaires

  1. [FPDF] Encodage UTF-8
    Par navis84 dans le forum Bibliothèques et frameworks
    Réponses: 17
    Dernier message: 08/09/2018, 12h43
  2. [phpMyAdmin] UTF-8 et phpMyAdmin : problèmes d'encodage
    Par -DeN- dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 29
    Dernier message: 29/05/2016, 11h27
  3. Encodage ANSI vers UTF-16
    Par Xanime dans le forum Services Web
    Réponses: 5
    Dernier message: 01/08/2011, 14h27
  4. [MySQL] Problème d'encodage UTF-8
    Par cloridriks dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 30/10/2007, 11h19
  5. Problème d'encodage en UTF-8
    Par navis84 dans le forum Langage
    Réponses: 5
    Dernier message: 29/08/2006, 11h19

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