Das chinesische Problem ist ein Problem, das häufig in Anwendungen auftritt.
Dies beinhaltet Zeichendekodierungsvorgänge. In unseren Anwendungen verwenden wir häufig neue String(fieldType.getBytes("iso-8859-1"), "UTF-8"); Diese Methode ist jedoch durch die spezifische Anwendungsumgebung begrenzt, und wenn sich die Anwendungsbereitstellungsumgebung ändert, werden häufig verstümmelte chinesische Zeichen angezeigt.
Hier ist eine Lösung, die in jeder Anwendungsbereitstellungsumgebung verwendet werden kann. Diese Methode besteht aus zwei Schritten:
1. Verwenden Sie die Methode escape(encodeURIComponent(fieldValue)) zum Codieren auf dem Client, zum Beispiel:
Kopieren Sie den Codecode wie folgt:
title=escape(encodeURIComponent(title)); //Dies ist eine Funktion in js
url="<%=request.getContextPath()%>/print/printList!printTable.action?title="+title;
2. Verwenden Sie zum Dekodieren java.net.URLDecoder.decode(getRequest().getParameter("title"),"UTF-8") auf dem Server.
-------------------------------------------------- --------------------------
Das Problem verstümmelter Zeichen in parent.window.location.href und src in iframe.
Um Chinesisch in diesen beiden URL-Adressen zu übertragen, müssen Sie sie verschlüsseln und dann entschlüsseln.
Kodierung: encodeURI(encodeURI("Zeichenfolge mit Chinesisch"))
Dekodierung: java.net.URLDecoder.decode("Zu dekodierender String", "utf-8");