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

  FORUM HardWare.fr
  Programmation
  Java

  URLEncoder et javascript:escape()

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

URLEncoder et javascript:escape()

n°1089206
krosso
j'suis à la bourre
Posté le 19-05-2005 à 14:57:03  profilanswer
 

la fonction javascript escape() permet d'url encoder une chaine.
Par exemple la chaine "Mon fichier à moi.xls" devient : "Mon%20fichier%20%E0%20moi.xls"
 
Je voudrais faire la même chsoe en Java.
Sans trop me poser de question je fais appelle à URLEncoder.encode(chaine, "UTF-8" ) en pensant que ça faisait la même chose que le escape sus-cité.
Mais non.
Ca me donne : "Mon+fichier+%C3%A0+moi.xls"
J'ai tenté aussi URLEncoder.encode(chaine, "ISO-8859-1" ) : "Mon+fichier+%E0+moi.xls"
 
Donc si je veux ouvrir une connexion HTTP et récupérer le document "Mon fichier à moi.xls" comment puis-je faire ???
 
Merci.

mood
Publicité
Posté le 19-05-2005 à 14:57:03  profilanswer
 

n°1089212
benou
Posté le 19-05-2005 à 15:00:27  profilanswer
 

y a 2 méthodes pour encoder les espaces dans le format des url : soit un '+' soit en utilisant le code du caractère en hexadecimal => esapce = '%20'
 
bref, les donnes méthodes fonctionne => tu peux utiliser URLEncoder.encode.
Et laisse l'encodage en "UTF-8", ca n'a rien à voir avec ce que tu essayes de faire ...


Message édité par benou le 19-05-2005 à 15:00:48

---------------
ma vie, mon oeuvre - HomePlayer
n°1089251
krosso
j'suis à la bourre
Posté le 19-05-2005 à 15:14:10  profilanswer
 

benou a écrit :

y a 2 méthodes pour encoder les espaces dans le format des url : soit un '+' soit en utilisant le code du caractère en hexadecimal => esapce = '%20'
 
bref, les donnes méthodes fonctionne => tu peux utiliser URLEncoder.encode.
Et laisse l'encodage en "UTF-8", ca n'a rien à voir avec ce que tu essayes de faire ...


 
C'est ce que je croyais aussi, mai ça ne fonctionne pas.
 
Si je fais un bête replace de ' ' par '%20' pour le fichier "Mon fichier.xls", ça fonctionne.
Si j'appelle "Mon+fichier.xls" il va bien chercher un fichier qui contient un '+' et non me le remplacezr par un ' '.
 
Je crains devoir me faire un sale tableau et une série de replaceAll() (Berrk).

n°1089257
benou
Posté le 19-05-2005 à 15:16:50  profilanswer
 

c'est quoi ton serveur web ? pacrce que même IE remplace les ' ' par des '+' ...  
remarque, peut être seulement dans les paramètre, pas dans le passe :gratgrat:
 
plutot qu'un replaceAll, boucle et encode tout ce qui est d'un code > 128 en # + code hexa du char


---------------
ma vie, mon oeuvre - HomePlayer
n°1089262
krosso
j'suis à la bourre
Posté le 19-05-2005 à 15:18:40  profilanswer
 

benou a écrit :

c'est quoi ton serveur web ? pacrce que même IE remplace les ' ' par des '+' ...  
remarque, peut être seulement dans les paramètre, pas dans le passe :gratgrat:
 
plutot qu'un replaceAll, boucle et encode tout ce qui est d'un code > 128 en # + code hexa du char


LE plus simple serait que mes utilisateurs arrêtent de me pondre des noms à la cons pour leurs fichiers genre moins de 10 char et tout en ascii 7bit  :D  
 
Merci pour le conseil.

n°1089278
krosso
j'suis à la bourre
Posté le 19-05-2005 à 15:28:30  profilanswer
 

Et pour répondre à ta question c'est un Apache httpd 2.
 
Mais les caractères + et - ne sont pas ré-encoder, comment ferait-il pur les différencier.
 
Je crois qu'il y a une différence d'encodage entre l'adresse et les données d'un formulaire (que ce soit POST ou GET).

n°1089294
benou
Posté le 19-05-2005 à 15:36:42  profilanswer
 

krosso a écrit :

Mais les caractères + et - ne sont pas ré-encoder, comment ferait-il pur les différencier.


 :heink:  
le + est réencodé : %2B  
 
peut être qu'il y a une différence ouais ... mais c'est bizarre que j'ai jamais rencontré ce problème si c'est le cas ...  :??:


---------------
ma vie, mon oeuvre - HomePlayer
n°1089314
krosso
j'suis à la bourre
Posté le 19-05-2005 à 15:44:07  profilanswer
 

benou a écrit :

:heink:  
le + est réencodé : %2B  
 
peut être qu'il y a une différence ouais ... mais c'est bizarre que j'ai jamais rencontré ce problème si c'est le cas ...  :??:


 
ah ?
la fonction escape() ne le ré-encode pas.
 
"mon fichier à moi+toi.xls" devient "mon%20fichier%20%E0%20moi+toi.xls"

n°1089405
benou
Posté le 19-05-2005 à 16:07:31  profilanswer
 

bizarre ...


---------------
ma vie, mon oeuvre - HomePlayer

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

  URLEncoder et javascript:escape()

 

Sujets relatifs
Taglibs javascript[résolu] [javascript/css] placer une image après action
[HTML/Javascript] Imprimer une iframe cachée...[Javascript] Récupérer les arguments de l'adresse
[Javascript] Les points-virgules[ ASP / JavaScript ? ] Manipulation chaîne de caractères
Explication d'un bout de code Javascript[javascript] différence entre IE et FireFox
[javascript] probleme onmouseover avec frameProbleme javascript avec safari
Plus de sujets relatifs à : URLEncoder et javascript:escape()


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR