String original = "This is my string valúe";
我正在尝试将上面的字符串编码为UTF-8等效字符,但只用 - “ú”替换特殊字符(ú)在这种情况下。
我尝试使用以下内容,但收到错误:
输入不正确UTF-8,表示编码!字节:0xFA 0x20 0x63 0x61
代码:
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
答案 0 :(得分:3)
您可以使用String.replace(CharSequence, CharSequence)
并将其格式化为
String original = "This is my string valúe";
System.out.printf("Output : %s%n", original.replace("ú", "ú"));
哪些输出(我认为你想要的)
Output : This is my string valúe
答案 1 :(得分:0)
您似乎想要使用XML字符实体。
Appache Commons Lang有一个方法(在StringEscapeUtils中)。
答案 2 :(得分:0)
我尝试将上述字符串编码为UTF-8等效字符,但仅用>特殊字符(ú)替换 - “ú”在这种情况下。
我不确定编码“ú”但是你试过看URLEncoder
班了吗?它不会按照你要求的方式对字符串进行编码,但它会摆脱怪异的角色。
答案 3 :(得分:-3)
请你试试以下几行:
byte ptext[] = original.getBytes("UTF8");
String value = new String(ptext, "UTF8");