Java Kodieren Sie Sonderzeichen in einem String mit UTF-8-Zeichen
String original = "This is my string valúe";
Bin ich versucht zu codieren, die oben genannten string in UTF-8 entspricht, sondern nur den Austausch von Sonderzeichen (ú) mit -- "ú ;" in diesem Fall.
Habe ich versucht, mit Hilfe der unten aber ich erhalte eine Fehlermeldung:
Input is not proper UTF-8, indicate encoding !Byte: 0xFA 0x20 0x63 0x61
Code:
String original = new String("This is my string valúe");
byte ptext[] = original.getBytes("UTF-8");
String value = new String(ptext, "UTF-8");
System.out.println("Output : " + value);
This is my string valúe
- warum nach unten Stimmen
- was ist der Grund für das down-vote?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnten Sie
- String.replace(CharSequence, CharSequence)
und formatierte io wieWelche Ausgänge (ich glaube, Sie wollte)
StringEscapeUtils
undescapeHtml
.org.apache.commons.lang3
ist nicht und StringEscapeUtils aus der Verpackungorg.apache.commons.text
statt.Sie scheinen zu wollen, dass die Verwendung von XML-Zeichenentitäten.
Appache Commons Lang hat eine Methode für diese (in StringEscapeUtils).
Ich bin mir nicht sicher, was die Kodierung "ú ;" aber haben Sie versucht, Blick auf die
URLEncoder
Klasse? Es wird nicht Kodieren Sie die Zeichenfolge genau so, wie Sie gefragt, aber es entledigt sich der gespenstische Charakter.Könnten Sie bitte versuchen Sie die folgenden Zeilen: