Heim > Java > javaLernprogramm > Hauptteil

Warum ersetzt URLEncoder Leerzeichen in HTML-Formular-URLs durch „ ' und wie kann ich stattdessen „ ' erhalten?

Mary-Kate Olsen
Freigeben: 2024-11-11 10:45:03
Original
277 Leute haben es durchsucht

Why does URLEncoder replace spaces with ' ' in HTML form URLs, and how can I get

URLEncoders Behandlung von Leerzeichen in HTML-Formular-URLs

In URLEncoding wird eine Zeichenfolge in das Format „application/x-www-form-“ konvertiert. Im MIME-Format „urlencoded“ erwartet der URLEncoder, Leerzeichen gemäß den HTML-Spezifikationen durch „“-Zeichen zu ersetzen. Dieses Verhalten folgt den Codierungsregeln für HTML-Formulare, bei denen Steuerelementnamen und -werte maskiert und Leerzeichen durch „ ' ersetzt werden müssen.

Das Problem tritt auf, wenn die erwartete Ausgabe „ “ für Leerzeichen anstelle des Standardverhaltens von ist " ". Um diese Diskrepanz zu beheben, muss nach der anfänglichen URLEncoding das Zeichen „ “ manuell durch „ ersetzt werden. Zum Beispiel:

System.out.println(java.net.URLEncoder.encode("Hello World", "UTF-8").replace("+", "%20"));
Nach dem Login kopieren

Dadurch wird das erwartete „Hello World“ mit Leerzeichen ausgegeben, die korrekt als „ “ codiert sind.

Das obige ist der detaillierte Inhalt vonWarum ersetzt URLEncoder Leerzeichen in HTML-Formular-URLs durch „ ' und wie kann ich stattdessen „ ' erhalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage