2016-11-26 7 views
-2
String original = "This is my string valúe"; 

Ich versuche, die oben Zeichenfolge in UTF-8 äquivalent zu kodieren, sondern nur Sonderzeichen (Ü) mit ersetzen - „& # 250;“ in diesem Fall.Java kodieren Sonderzeichen in einem String mit UTF-8-Zeichen

Ich habe versucht, die unten verwenden, aber ich erhalte eine Fehlermeldung:

Input is not proper UTF-8, indicate encoding !Bytes: 0xFA 0x20 0x63 0x61

Code:

+0

@ user4015632 warum down vote – user4015632

+0

was ist der Grund für die Abstimmung unten? – user4015632

Antwort

2

Sie String.replace(CharSequence, CharSequence) verwenden könnte und formatiert io wie

String original = "This is my string valúe"; 
System.out.printf("Output : %s%n", original.replace("ú", "ú")); 

Welche Ausgänge (wie ich denke, Sie wollten)

Output : This is my string valúe 
+1

was ist, wenn ich ein anderes Sonderzeichen wie "ñ" habe. Anstelle von Hardcode gibt es eine Möglichkeit, jedes Sonderzeichen mit seinem äquivalenten UTF-8-Wert zu konvertieren. – user4015632

+3

Werfen Sie einen Blick auf ['StringEscapeUtils'] (https://commons.apache.org/proper/commons-lang/javadocs/api-2.6/org/apache/commons/lang/StringEscapeUtils.html) und' escapeHtml'. –

+0

StringEscapeUtils löste das Problem! – user4015632

-3

Könnten Sie bitte versuchen Sie die folgenden Zeilen:

byte ptext[] = original.getBytes("UTF8"); 
String value = new String(ptext, "UTF8"); 
+0

Ich bekomme immer noch das -> Das ist mein String valúe. Gewünschte Lösung -> Das ist meine Zeichenfolge val ú e – user4015632

0

Im trying to encode the above string to UTF-8 equivalent but to replace only >special character (ú) with -- "&#250 ;" in this case.

Ich bin nicht sicher, welche Codierung "& # 250;" ist aber haben Sie versucht, die URLEncoder Klasse zu betrachten? Es wird die Zeichenfolge nicht genau so codieren, wie du es verlangst, aber es wird den gruseligen Charakter los.

+0

URLEncoder Klasse codiert Klartext mit allen + Zeichen usw., die wirklich nicht funktioniert haben. Aber StringEscapeUtils besser geeignet für eine HTML-Seite Text oder Titel – user4015632

Verwandte Themen