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

avec Java Discussion :

Remplacer les carractères spéciaux dans un texte


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Par défaut Remplacer les carractères spéciaux dans un texte
    Bonjour tout le monde.

    Je suis en train de me faire un outil en java pour encoder automatiquement mes textes. Donc j'ai utilisé deux champs texte aréa, un qui sera remplie par du texte normal et le second qui aura remplacer par des caractères spéciaux.

    Exemple:
    Ceci est un texte normal, qui une fois codé devrais ressembler à ceci:
    Ceci est un texte normal, qui une fois codé devrais ressembler à ceci

    Existe-il une solution simple pour effectuer cette tâche ?

    Cordialement.

  2. #2
    Membre chevronné
    Inscrit en
    Juillet 2006
    Messages
    534
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 534
    Par défaut
    Pour tes besoins: remplacer un caractere special (lettres utilisees par la langue francaise) par un ensemble de caracteres tu peux essayer ceci par exemple
    - Lister un map de correspondances entre tes caracteres speciaux et leur encodage
    - convertir ton String en un array of bytes
    - pour chaque element de cet array of bytes
    Si c'est un caractere special alors
    remplacer par son encodage et mettre dans le buffer result
    Sinon mettre ce caractere dans le buffer result

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 483
    Par défaut
    bin qu'effectivement tu puisse remplacer tes accents par des entités html, quel est l"intérêt, puisque le html accepte aussi de mettre directement à é è etc, et que ces entités n'existent pas en dehors du html. Bref, à moins d'avoir un navigateur dinosauresque, cette transformation ne me parrait pas utile.

  4. #4
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,


    Je ne pense pas qu'il faille travailler au niveau des bytes. A cause des différents encodage cela risque d'être plus pénible. Au contraire il serait plus simple de travailler directement sur les caractères via une boucle ou tout simplement une expression régulière...

    Enfin il faudrait savoir si tu as vraiment besoin de la forme littéraire des entités, car dans ce cas là tu vas être obligé de faire une association entre le caractère et sa valeur.


    A moins que tu ne t'autorises à utiliser les valeurs numériques ( &#224 ; à la place de à ) car ils correspondent exactement à la valeur unicode du caractères.

    a++


    PS : tchize_ : ca dépend aussi de l'encodage utilisé pour générer la page

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 483
    Par défaut
    Citation Envoyé par adiGuba Voir le message
    PS : tchize_ : ca dépend aussi de l'encodage utilisé pour générer la page
    C'est vrai, mais dans ces cas là, les entités numériques sont tout aussi inutiles car elle sont converties en utilisant l'encodage du document De plus, il me semble plus facile et plus sain d'utiliser pour les page un encodage qui supporte ce qu'on veux mettre dedans

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 586
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 586
    Par défaut
    Citation Envoyé par tchize_ Voir le message
    C'est vrai, mais dans ces cas là, les entités numériques sont tout aussi inutiles car elle sont converties en utilisant l'encodage du document
    Nope.

    Citation Envoyé par tchize_ Voir le message
    De plus, il me semble plus facile et plus sain d'utiliser pour les page un encodage qui supporte ce qu'on veux mettre dedans
    De fait. Cela dit, ce n'est pas toujours pratique à faire.


    Je pense que la solution de ttttnht fonctionne, mais comme adiGuba je déconseille de travailler avec des bytes. Plutôt avec des String et des char.
    Et j'encourage comme tout le monde à vérifier que les entités sont bien nécessaires.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

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

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 483
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Nope.
    Il y a des jours comme çà ou je ferais mieux de me taire De fait c'est encodé dans le format UCS, j'ai confondu sur le coup avec l'encodage des url en http, qui est dépendant de l'encodage

Discussions similaires

  1. Remplacer les caractères spéciaux dans xml
    Par panda31 dans le forum Développement de jobs
    Réponses: 14
    Dernier message: 19/10/2011, 10h53
  2. Remplacer les caractères spéciaux dans un string
    Par MartinezGarcia dans le forum Oracle
    Réponses: 8
    Dernier message: 30/09/2011, 19h24
  3. Remplacer les caractères spéciaux dans un prénom(Regex)
    Par sajodia dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 17/05/2011, 18h19
  4. Réponses: 5
    Dernier message: 04/12/2007, 12h00
  5. Réponses: 5
    Dernier message: 23/10/2005, 19h27

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