[Java] backslasher les ' et les "

Fermé
iubito Messages postés 25 Date d'inscription mardi 15 octobre 2002 Statut Membre Dernière intervention 25 février 2007 - 15 juil. 2003 à 15:53
 omar - 16 juil. 2003 à 16:22
Hello les jeunes !

Je craque sur un truc tout con. En PHP pour ajouter des \ devant les ' et les " il suffit de faire addslashes($chaine).
Mais en JAVA comment on fait ??? :$

iubito - http://iubito.free.fr
programmation - musique - Roumanie - annuaire de sites
A voir également:

17 réponses

maily Messages postés 7556 Date d'inscription lundi 26 juin 2000 Statut Contributeur Dernière intervention 23 juin 2023 453
15 juil. 2003 à 16:43
Bonjour

Si je comprends bien, tu veux juste mettre un backslash devant pour qu'ils soient pris en compte dans une chaine de caractère!!
et bien tout simplement, tu écris comme cela

"blablabla \" hihihihi \" "

et l'affichage sera:

blablabla " hihihihi "


Bon courage

Maily   :-))))
0
iubito Messages postés 25 Date d'inscription mardi 15 octobre 2002 Statut Membre Dernière intervention 25 février 2007
15 juil. 2003 à 18:34
lol ça je sait faire, j'suis pas un débutant en prog ^^

mais mon pb c'est que j'ai une chaîne dans ma base de données
ex: C'est d'la balle !

donc j'ai maString = "C'est d'la balle !";

et j'ai le code suivant
<div onmouseover="fonction1('<%=maString%>');">
(mélange javascript et jsp lol)

et donc je veux pouvoir appliquer une fonction à maString pour qu'elle soit transformée en C\'est d\'la balle ! pour apparaître correctement dans mon code
<div onmouseover="fonction1('C\'est d\'la balle !');">

en PHP j'aurai fais un <?=addslashes($maString)?>
mais en java je ne c pas :'(

iubito - http://iubito.free.fr
programmation - musique - Roumanie - annuaire de sites
0
Pour obtenir la chaine
C\'est d\'la balle !
desirée il faut faire
"C\\\'est d\\\'la balle !"

Essaie!!!
0
iubito Messages postés 25 Date d'inscription mardi 15 octobre 2002 Statut Membre Dernière intervention 25 février 2007
15 juil. 2003 à 19:06
ah kel est bien bonne ton idée ? ^^
mais quand ce sont des milliers de chaînes de caractères qui sont stockées dans la base de données, il faut appliquer une fonction et je pense bien que java en à une. PHP et ASP en ont !
mais le pb c que je ne trouve nulle part cette fonction :'(

iubito - http://iubito.free.fr
programmation - musique - Roumanie - annuaire de sites
0
Pour obtenir la chaine

C\'est d\'la balle !

desirée il faut faire

C\\\'est d\\\'la balle !

Dr.Maiga
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
iubito Messages postés 25 Date d'inscription mardi 15 octobre 2002 Statut Membre Dernière intervention 25 février 2007
15 juil. 2003 à 20:09
t sympa, tu me dis la fonction ^^ et je t'embête plus, même si tu semble pas avoir tout compris.
Je veux C'est d'la balle ! => C\'est d\'la balle !
et je demande SI IL EXISTE une fonction java, et LAQUELLE.

iubito - http://iubito.free.fr
programmation - musique - Roumanie - annuaire de sites
0
Salut iubito,

ils sont durs d'oreille hein ?? : ))) moi j'ai compris ce que tu voulais mais je connais pas la réponse ! arf désolé : ))

a+
0
iubito Messages postés 25 Date d'inscription mardi 15 octobre 2002 Statut Membre Dernière intervention 25 février 2007
16 juil. 2003 à 08:18
ouais sont dur dur d'oreille... :P

iubito - http://iubito.free.fr
programmation - musique - Roumanie - annuaire de sites
0
La fonction ejava pour remplacer des carateres du package java.lang.String
etst replaceAll

Ex: remplacez la lettre t par la lettre z

ca donne String tes="je suis temoin t d accord"
res.replaceAll("t","z);

Voila suffit de consulter l API de java pour + de détail
ici:
http://java.sun.com/j2se/1.4.1/docs/api/
A+ Omar,
0
maily Messages postés 7556 Date d'inscription lundi 26 juin 2000 Statut Contributeur Dernière intervention 23 juin 2023 453
16 juil. 2003 à 10:05
Bonjour!!
Bon, finalement je dirais que non, en java aucune fonction n'existe pour le faire...
Faut se taper les chaines à la main!!

désolée

Bon courage

Maily   :-))))
0
iubito Messages postés 25 Date d'inscription mardi 15 octobre 2002 Statut Membre Dernière intervention 25 février 2007
16 juil. 2003 à 11:50
ok bon bein JAVA SUX ! lol
ils ont des super fonctions mais des fonctions de bases n'existent pas :'(
bon j'en ai écrit une qui fait l'équivalent du nl2br et du addslashes de PHP et qui semble marcher.

	public static String str2js(String s)

{
String r = "";
if (s == null)
s = "";
else
s = s.trim();
for (int i=0; i < s.length(); i++ )
{
if ((s.charAt(i) == '\'') || (s.charAt(i) == '\"'))
r += "\\";
if (s.charAt(i)=='\n') //\n => <br />, \r == rien du tout
r += "<br />";
else
{
if (s.charAt(i)!='\r')
r += s.charAt(i);
}
}
return r;
}


iubito - http://iubito.free.fr
programmation - musique - Roumanie - annuaire de sites
0
iubito Messages postés 25 Date d'inscription mardi 15 octobre 2002 Statut Membre Dernière intervention 25 février 2007
16 juil. 2003 à 11:50
mais bon elle n'est pas évolutive et peut-être pas complète :-/

iubito - http://iubito.free.fr
programmation - musique - Roumanie - annuaire de sites
0
Quoi java pas complez l API fait plus de 130 mo comportant 9001 fichiers et tu dis que c pas complet?
Je t ai dis que relplaceALL cette methode le faisait tres bien !
copier/coller de l API:

String replaceAll(String regex, String replacement)
Replaces each substring of this string that matches the given regular expression with the given replacement.

Pour avoir des détail sur cette méthode (qui marche tres bien!!)
http://java.sun.com/j2se/1.4.1/docs/api/java/lang/String.html#replaceAll(java.lang.String, java.lang.String)
0
iubito Messages postés 25 Date d'inscription mardi 15 octobre 2002 Statut Membre Dernière intervention 25 février 2007
16 juil. 2003 à 15:36
bein perso le replaceAll merdait kan je remplaçait un espace par une chaîne vide.
Et puis bein peut-être que c'est complet, mais c un labyrinthe, et d'ailleurs si c'est complet, trouve moi les fonctions souvent utilisées kan on génère du html/javascript
- backslasher les ' et les " (addslashes de PHP)
- transformer les retour chariots en <br /> (nl2br de PHP)
- transformer les é à ç en & code ; (htmlspecialchar de PHP je crois)

!!!

iubito - http://iubito.free.fr
programmation - musique - Roumanie - annuaire de sites
0
Tu dis ca merdait cad ca te générait un execption NUlpointerException c ca?
sinon " transformer les é à ç en & code ; (htmlspecialchar de PHP je crois)"

Il le fait mais je ne suis pas une encyclopédie , recherche la partie HTML de l API qui traite de ca.
Le reste je sais pas.
Mais je t assure que Avec java tu peux faire bcp plus qu en PHP.
C simple en Java tu peux tt faire! (graphique , reseaun,page web..)
0
iubito Messages postés 25 Date d'inscription mardi 15 octobre 2002 Statut Membre Dernière intervention 25 février 2007
16 juil. 2003 à 15:49
je ne c plus l'erreur du replaceAll, j'ai fais ma fonction à moi ;-)

ah mais bien sûr en Java on fait du rézo, de l'embarqué, du scientifique, du graphisme... et tout et tout, mais j'entends souvent java c'est THE langage orienté web, là je suis moins convaincu.

iubito - http://iubito.free.fr
programmation - musique - Roumanie - annuaire de sites
0
iubito Messages postés 25 Date d'inscription mardi 15 octobre 2002 Statut Membre Dernière intervention 25 février 2007
16 juil. 2003 à 15:57
bon j'ai regardé dans la doc, etles API HTMLkelkchose ne contiennent pas de telles fonctions... c'est triste :'(

iubito - http://iubito.free.fr
programmation - musique - Roumanie - annuaire de sites
0
Ah non java n est pas trop fait pr les caulcs scientifiq (cf l api math et t auras vite compris) en plus pr les gros calcul vu que c du emule c pas le top( ca risque d hyper ramé)
0
Me trompaisje ou tu n pas fait bcp de java

En java tu peux crére tes propres packages , ta propre API, (come celle de java générait automatiuement avec les commentaires que tu veux)
Si une méthode ne te plais pas tu meme l'entendre la redéfinir
Si tu trouve qu'ne classse n a pas assez de méthode tu peux l etendre.. (si la classe n est pas définit final)

Au contraire java est comme il est objet, peut etre étendu a l infini (cad en nb de méthode et classe)
Omar


Je te cite IBM:
"Le Choix de Java™
- Java est la première plate-forme logicielle universelle de l'industrie
- Evolutif"
0