2017-01-21 7 views
-1

Mein Problem beim Drucken ist ErsteJavascript Sonderzeichen nicht korrekt

statt '™' Javascript.

Ich habe eine HTML-Seite, in der ich Form habe, mit der ich eine Datei an Servlet sende.

Servlet verarbeitet die Datei und gibt 'response' im JSON-Format zurück.

Dieser JSON enthält in seinem Wert '™' Zeichen. Während ich json in Servlet drucke '™' wird korrekt gedruckt.

Aber wenn ich diese JSON auf HTML-Seite zurückgeben und wenn ich versuche, es auf der Konsole zu drucken, wird es wie drucken.

Wie kann ich den tatsächlichen Wert erhalten ..?

Hier ist das Code-Snippet. Versuchen

success : function(response) 
        { 
         console.log(response); //printing `�` 
         resp = JSON.parse(response); 
         console.log(resp);  // printing `�` 
        } 
+1

http://www.joelonsoftware.com/articles/Unicode.html – Biffen

+0

was Sie in Ihrem HTML-Kopf tun? –

+0

Beachten Sie, dass JSON UTF8 ist und Java-Zeichenfolgen UTF16 sind. Daher müssen Sie Ihren JSON als UTF8-Byte bereitstellen, sodass Sie etwas wie Byte [] ausführen müssen outbuff = mystring.getBytes ("UTF-8"); –

Antwort

0

I gelöst durch UTF-8-Zeichencodierung in der Reaktion verwendet wird. folgende Zeile löste es:

response.getOutputStream().write(responseJsonObject.toJSONString().getBytes("UTF-8"));

-1

eines von diesen: ™ oder ™

Verwandte Themen