Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2485 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Supprimer les accents ...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Supprimer les accents ...

n°172994
chapi456
Posté le 08-07-2002 à 16:47:14  profilanswer
 

Hello,  
 
J'ai une appli web (jsp/servlet) : c'est juste pour le contexte, je crois pas que ca serve pour la solution ...  :sol:  
Donc, j'aimerai pouvoir supprimer les accents (et autres caractères spéciaux propres a notre chère langue).
Exemple : 'è' -> 'e' et 'à' -> 'a' ...
Par contre, je veux pas me taper une hashtable pour faire les conversions ...
Donc je voudrais savoir si il y a un moyen simple de faire.

mood
Publicité
Posté le 08-07-2002 à 16:47:14  profilanswer
 

n°172997
El_gringo
Posté le 08-07-2002 à 16:49:09  profilanswer
 

chapi456 a écrit a écrit :

Hello,  
 
J'ai une appli web (jsp/servlet) : c'est juste pour le contexte, je crois pas que ca serve pour la solution ...  :sol:  
Donc, j'aimerai pouvoir supprimer les accents (et autres caractères spéciaux propres a notre chère langue).
Exemple : 'è' -> 'e' et 'à' -> 'a' ...
Par contre, je veux pas me taper une hashtable pour faire les conversions ...
Donc je voudrais savoir si il y a un moyen simple de faire.




 
J'vois pas bien ce que viendrait fouttre une Hashtable ici !
C qd même pas bien dur d'énumérer les caractères, et de remplacer untel par un tel...

n°172999
darklord
You're welcome
Posté le 08-07-2002 à 16:52:17  profilanswer
 

tu veux les remplacer parce que t'arrive pas à les afficher correctement ? Si oui demande a --greg-- il a eu ce genre de prob récemment


---------------
Just because you feel good does not make you right
n°173002
--greg--
Posté le 08-07-2002 à 16:54:31  profilanswer
 

DarkLord a écrit a écrit :

tu veux les remplacer parce que t'arrive pas à les afficher correctement ? Si oui demande a --greg-- il a eu ce genre de prob récemment



naaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaan
not AGAIN
;(

n°173004
chapi456
Posté le 08-07-2002 à 16:56:46  profilanswer
 

Pour la hashtable : C'etait juste un exemple pour faire la correspondance entre le caractere accentué et le non accentué.
 
Pour darklord : non, c'est pas pour l'affichage, de ce coté comme c'est une appli web, y'a la gestion des caractères unicode qui va bien ... c'est plutot pour faire des recherches :  
 
Exemple : si je lance une recherche sur 'biere', je veux obtenir : 'biere' mais aussi 'Biere' et pis 'bièRe', ...
Pour les cases, c'est bon mais pour les accents, ca gonfle.
Je voulais utiliser les conversions unicodes (un caractère est accentué donc on devrait connaître le caractère de base) mais j'arrive pas à trouver comment faire ca ...
 
De plus, le coup de comparer caractère par caractère, c'est bien gentil mais pas tres efficace ... (c'est ce a quoi servait le contexte, pour justifier d'un besoin de performance ...) !

n°173005
chapi456
Posté le 08-07-2002 à 16:57:16  profilanswer
 

--greg-- a écrit a écrit :

naaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaan
not AGAIN
;(




 
tu peux m'en dire plus ...  :D  :D  :D

n°173029
--greg--
Posté le 08-07-2002 à 17:17:13  profilanswer
 

chapi456 a écrit a écrit :

 
 
tu peux m'en dire plus ...  :D  :D  :D  



nan mais j'ai des pb avec mon serveur jsp/Servlets, mysql, les accents et tout ça. :(
 

n°173055
chapi456
Posté le 08-07-2002 à 17:38:15  profilanswer
 

--greg-- a écrit a écrit :

nan mais j'ai des pb avec mon serveur jsp/Servlets, mysql, les accents et tout ça. :(
 
 




Perso, derriere mon serveur, j'ai une base oracle et les accents, pas de problème ...

n°173063
--greg--
Posté le 08-07-2002 à 17:45:13  profilanswer
 

chapi456 a écrit a écrit :

 
Perso, derriere mon serveur, j'ai une base oracle et les accents, pas de problème ...




ben tant mieux pour toi :)
mais ça va pas me convaincre d'utiliser oracle quand j'y suis pas obligé:)

n°209503
--greg--
Posté le 05-09-2002 à 19:55:25  profilanswer
 

bon à tout hasard, personne à un bon truc pour le problème du jeune homme, j'en ai besoin :) [:--greg--]


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
mood
Publicité
Posté le 05-09-2002 à 19:55:25  profilanswer
 

n°209541
veryfree
Posté le 05-09-2002 à 20:40:45  profilanswer
 

--greg-- a écrit a écrit :

bon à tout hasard, personne à un bon truc pour le problème du jeune homme, j'en ai besoin :) [:--greg--]  




 
 
jme disait bine qu il avait été deterré ce topic  :D

n°209546
benou
Posté le 05-09-2002 à 20:47:36  profilanswer
 

--greg-- a écrit a écrit :

bon à tout hasard, personne à un bon truc pour le problème du jeune homme, j'en ai besoin :) [:--greg--]  




 
j'ai essayé ca  

Code :
  1. String s = "cédric";
  2.       String sSansAccent = new String(s.getBytes(), "US-ASCII" );
  3.       System.out.println(sSansAccent);


mais ca donne ca

Code :
  1. c?dric

n°209576
--greg--
Posté le 05-09-2002 à 21:36:30  profilanswer
 

et sinon, transcoder(?) une chaine dans un codage non-supporté par defaut par le jdk, y'a moyen? (ibm page 850 en l'occurence, enfin un truc comme ça)
 
edit: enfin, c pas vraiment un encodage mais plutot un character set...
 
edit: http://utopia.knoware.nl/users/epr [...] ge850.html


Message édité par --greg-- le 05-09-2002 à 21:39:52

---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°209613
krosso
j'suis à la bourre
Posté le 05-09-2002 à 22:38:00  profilanswer
 

Et pourquoi pas bêtement une table de correspondances "à la main" ?
 
D'ailleurs ça a déjà été écrit.

el_gringo a écrit a écrit :

 
C qd même pas bien dur d'énumérer les caractères, et de remplacer untel par un tel...




Bin non, y'en quand même pas des centaines des caractères accentués en français.


Message édité par krosso le 05-09-2002 à 22:39:53
n°209616
--greg--
Posté le 05-09-2002 à 22:43:08  profilanswer
 

krosso a écrit a écrit :

Et pourquoi pas bêtement une table de correspondances "à la main" ?
 
1 D'ailleurs ça a déjà été écrit.
 
2 Bin non, y'en quand même pas des centaines des caractères accentués en français.



1 ou?
2 si tu veux faire l'inverse, c'est autre chose(limiter a une serie de chars et non en 'interdire' quelques uns). et y'a pas que le français dans la vie...


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°209620
krosso
j'suis à la bourre
Posté le 05-09-2002 à 22:54:09  profilanswer
 

--greg-- a écrit a écrit :

1 ou?
2 si tu veux faire l'inverse, c'est autre chose(limiter a une serie de chars et non en 'interdire' quelques uns). et y'a pas que le français dans la vie...




 
1: je voulais dire ça a déjà été proposé, je n'ai vu la fin du post de el gringo qu'après avoir posté le mien.
 
2. le post initial dit :  
"j'aimerai pouvoir supprimer les accents (et autres caractères spéciaux propres a notre chère langue). "
Faire du générique et de l'international c'est bien, mais dans le cas présent une simple règle "éèêë..." => e suffit.
 
"y'a pas que le français dans la vie..." : I'm quite aware of that ;-)
 

n°209621
--greg--
Posté le 05-09-2002 à 22:57:36  profilanswer
 

krosso a écrit a écrit :

 
 
1: je voulais dire ça a déjà été proposé, je n'ai vu la fin du post de el gringo qu'après avoir posté le mien.
 
2. le post initial dit :  
"j'aimerai pouvoir supprimer les accents (et autres caractères spéciaux propres a notre chère langue). "
Faire du générique et de l'international c'est bien, mais dans le cas présent une simple règle "éèêë..." => e suffit.
 
"y'a pas que le français dans la vie..." : I'm quite aware of that ;-)
 
 



ben oui mais le post initial il est bien bien vieux :) je l'ai remonté parce que ma question avait un rapport... bref mtnt c a MOI qu'il faut répondre :D


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°209628
krosso
j'suis à la bourre
Posté le 05-09-2002 à 23:11:43  profilanswer
 

--greg-- a écrit a écrit :

ben oui mais le post initial il est bien bien vieux :)



Hola oui, j'avais pas vu. Dsl  :D .
 
C'est tordu ce genre de pbm. Tu peux en dire un peu plus?
 
 

n°209631
--greg--
Posté le 05-09-2002 à 23:20:25  profilanswer
 

pas tout de suite, je suis en train de repasser mon linge [:ddr555]


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°209634
krosso
j'suis à la bourre
Posté le 05-09-2002 à 23:26:22  profilanswer
 

Dans ma boîte précédente on avait eu qlq petits pbm quand on récupérait des chaines de notre base Sybase d'une appli java.
Je ne m'étais pas occupé de ça mais je me rappelle que l'url qu'on passait au pilote jdbc était du style:
bdd.url=jdbc\:sybase\:Tds\:serveur.machin.com\:4101?CHARSET=iso_1&CHARSET_CONVERTER_CLASS\=com.sybase.jdbc2.utils.TruncationConverter.
Le pilote utilisait donc ce filtre.
Et on avait plusieurs classes de conversion de charset. Celle-là selon mon souvenir se contentait de tronquer les char étendus, mais d'autres faisaient de vraies conversions.
Si tu utilises jdbc, ça peut être une piste.
 

n°209640
--greg--
Posté le 05-09-2002 à 23:39:11  profilanswer
 

vi y'a un truc dans le genre avec les drivers jdbc de mysql aussi (j'en ai fait la douloureuse experience), mais là rien à voir...
j'ai une "bete" chaine java avec notamment des accents etc, et je dois la sortir du pc pour un periph qui ne comprend que le code page 850 :/


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°209803
Wons
Ga Bu Zo Me
Posté le 06-09-2002 à 10:15:27  profilanswer
 

et si tu fais le bon gros bourrin, en mettant tous les syles d'accents que tu connais ?
ex : str = str.replaceAll("[àáâãäåÀÁÂÃÄÅ]", "a" );

n°209824
--greg--
Posté le 06-09-2002 à 10:53:36  profilanswer
 

c du jdk1.4 ça:/


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°209845
krosso
j'suis à la bourre
Posté le 06-09-2002 à 11:35:15  profilanswer
 

c'est pas d'une élégance folle, mais ça marche:

Code :
  1. public class TestChar
  2. {
  3. public static void main(String args[])
  4. {
  5.  String test = "bébé août aiguë flèche poëte fît pétée ça";
  6.  System.out.println(test);
  7.  System.out.println(filtre(test));
  8. }
  9. static char[] source = new char[] {'é','è','ë','ê','à','â','ä','î','ï','ô','ö','ü','û','ù','ç'}; //oui, il y en a plein d'autres...
  10. static char[] dest   = new char[] {'e','e','e','e','a','a','a','i','i','o','o','u','u','u','c'};
  11. public static String filtre(String strMot)
  12. {
  13.  char [] mot = strMot.toCharArray();
  14.  StringBuffer buf=new StringBuffer();
  15.  boolean found = false;
  16.  for ( int i=0; i<mot.length ; i++)
  17.  {
  18.   int unicode = (int)(mot[i]);
  19.   if ( unicode>128 && unicode<256) //pour réduire la recherche, valeurs au pif => à déterminer
  20.   {
  21.    found=false;
  22.    for (int j=0; j<source.length && !found; j++)
  23.    {
  24.     if (mot[i] == source[j])
  25.     {
  26.      buf.append(dest[j]);
  27.      found=true;
  28.     }
  29.    }
  30.    if (!found) buf.append(mot[i]);
  31.   }
  32.   else buf.append(mot[i]);
  33.  }
  34.  return buf.toString();
  35. }
  36. }

n°209850
--greg--
Posté le 06-09-2002 à 11:38:40  profilanswer
 

krosso thanks...
je cherchais une méthode un peu plus transparente/standard quoi mais à defaut ça me servira, merci ;)


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°209860
krosso
j'suis à la bourre
Posté le 06-09-2002 à 11:48:55  profilanswer
 

--greg-- a écrit a écrit :

krosso thanks...
je cherchais une méthode un peu plus transparente/standard quoi mais à defaut ça me servira, merci ;)




 
Cette adresse pourra t'être utile pour récupérer les tables:
 
http://free.prohosting.com/~vitiva [...] iCode.html
(d'ailleurs c'est super il propose même des tableaux c/java à copier-coller!!)

n°209862
--greg--
Posté le 06-09-2002 à 11:51:01  profilanswer
 

:jap:


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°209863
--greg--
Posté le 06-09-2002 à 11:52:21  profilanswer
 

ha mais excellent y'a la table cp850 là :D


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Supprimer les accents ...

 

Sujets relatifs
[php, html, ou autre ??] Supprimer les barres outils et adresses IE[Javascript] Ajouter une valeur à un champ sans supprimer l'existant !
[XML] accents, variables, include ??Comment supprimer 2 cookies
[PHP] Comment supprimer un fichier texte ?Supprimer
Comment supprimer 2 valeurs chaines automatiquement dans Regedit?fortrant : comment supprimer une ligne ds un fichier
[C]Fonction supprimer...[Access/VB] Supprimer des accents dans une chaine de caractères
Plus de sujets relatifs à : Supprimer les accents ...


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)