Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

URLDecoder und €-Zeichen

Empfohlene Antworten

Veröffentlicht

Hallo,

vielleicht könnt ihr mir da weiterhelfen.

Ich habe einen String der URLEncoded ist und zwar unter ISO, den ich in einem Servlet decode:

String newString = URLDecoder.decode(oldString, "ISO-8859-1");

Dies klappt bei allen Sonderzeichen außer bei dem Euro-Zeichen(€)! Ein Eurozeichen (iso -encoded %80) als String (decoded) wird zu einem nicht dargestellten Zeichen (String-Länge aber 1), das entsprechende Zeichen über eine UTF-8 codierten JSP wird jedoch als undefinierbares Zeichen dargestellt (Viereck mit Ziffern drin).

Ich hätte aber gerne ein €-Zeichen:(.

Hat da jemand einen Tipp?

Mit freundlichen Grüßen,

Jobe

PS: Als Byte-Array ist dieses ominöse Zeichen [-62, -128]

Bearbeitet von Jobe2009

Hallo, danke für den Tipp. Leider hat dies nicht funktioniert...

Ich habe jetzt eine "manuelle" Umwandlung per String.replace("%80", "€") eingebaut, das funktioniert.

Mit freundlichen Grüßen,

Jobe

ich würde dir empfehlen, statt der iso-8859-1 Kodierung utf-8 Kodierung zu verwenden

meines Wissens verwenden Browser standardmäßi diese (bzw. eine andere Unicode-Kodierung) bei der Kodierung von URLs

da für URLs (bzw. die mit einem % kodierten Zeichen) kein Zeichencode festgelegt ist, kann es zu Problemen führen, wenn auf Clientseite eine andere Codierung verwendet wird

deine derzeitige Lösung halte ich eher für einen work-around, da es gerade dabei zu Kodierungsfehlern bei anderen Zeichencodes kommt

in ISO-8859-15 hat das €-Zeichen die Nummer A4 (Hexadezimal) und nicht 80 (hast du das bei deinem Test berücksichtigt?)

Leider hab ich auf das Encoding der Seite keinen Einfluss sonst währe es ja einfach :)

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.