J'envoie au navigateur une requête pour enregistrer un fichier avec le nom du fichier. Le nom de fichier peut inclure des espaces, donc je remplace tous les espaces par %20
. Internet Explorer et Chrome transfèrent %20
vers des espaces, mais Firefox ne le fait pas. Pourquoi? Y a-t-il un moyen pour que tous les navigateurs affichent l'espace?Pourquoi Firefox ne transfère pas% 20 dans l'espace ('')?
Ceci est mon code:
String codedName = new String(URLEncoder.encode(name, "UTF-8"));
codedName = codedName.replaceAll("\\+", "%20");
response.setHeader("Content-Disposition", "attachment; filename=\"" + codedName+ "\"");
Pourquoi modifiez-vous le résultat de encoder()? + est le code normal pour l'espace dans les URL. – PhiLho
True. Mais de plus en plus je continue de voir% 20 utilisé à la place de +, ce qui est bizarre. –