Lösung für verstümmelte Java-Übermittlung:
1. Wenn die Übermittlungsmethode „Post“ ist und Sie verstümmelte Zeichen vermeiden möchten, müssen Sie nur die Kodierung des Anforderungsobjekts festlegen Auf der Serverseite. Welche Codierung der Client übermittelt, das serverseitige Anforderungsobjekt wird in der entsprechenden Codierung empfangen. Wenn der Client beispielsweise in der UTF-8-Codierung übermittelt wird, ist das serverseitige Anforderungsobjekt in UTF-8-Kodierung empfangen (request.setCharacterEncoding("UTF -8"))
2. Wenn die Übermittlungsmethode get ist, ist die Einstellung der Kodierung des Anforderungsobjekts ungültig Wenn Sie verstümmelte Zeichen vermeiden möchten, können Sie die Daten daher nur manuell konvertieren. Die Schritte lauten wie folgt:
1). Client, und Sie erhalten eine verstümmelte Zeichenfolge, data="???è????"
String data = request.getParameter("paramName");
2). Durchsuchen Sie die ISO8859-1-Codetabelle und rufen Sie das Byte-Array der übermittelten Originaldaten ab durch den Client
byte[] source = data.getBytes("ISO8859-1");
3). Konstruieren Sie Zeichen mit der angegebenen Kodierung durch das Byte-Array. String, lösen Sie verstümmelte Zeichen Byte-Array. Die hier angegebene Kodierung basiert auf der Zeichenkodierung, die der Client beim Senden von Daten verwendet. Wenn es sich um GB2312 handelt, setzen Sie es auf data = new String(source, „GB2312“), wenn es UTF-8 ist Setzen Sie es auf data = new String(source, „UTF-8“)
data = new String(source, "UTF-8");Klicken Sie auf den Hyperlink, und die Daten werden in Form von get an den Server übertragen. Das Problem chinesischer verstümmelter Zeichen tritt auch bei der Verwendung chinesischer Daten auf. Die zu lösende Methode Das Problem verstümmelter chinesischer Zeichen ist dasselbe wie die oben beschriebene Methode zur Behandlung des Problems verstümmelter chinesischer Daten beim Senden von Formularen über get, wie unten gezeigt:
<a href="${pageContext.request.contextPath}/servlet/RequestDemo05?userName=gacl&name=房明">点击</a>Darüber hinaus gibt es noch andere Dinge, die behoben werden müssen Ein Punkt ist, dass, wenn auf die URL-Adresse chinesische Daten folgen, die chinesischen Parameter am besten mithilfe der URL-Codierung verarbeitet werden, wie unten gezeigt:
String name = request.getParameter("name"); name =new String(name.getBytes("ISO8859-1"), "UTF-8");Für weitere Java-Kenntnisse achten Sie bitte auf
Java Basic Tutorial
Spalte.Das obige ist der detaillierte Inhalt vonJava-Übermittlungslösung für verstümmelten Code. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!