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发布于 2016-11-26 01:56:40
您可以使用String.replace(CharSequence, CharSequence)和格式化io,如
String original = "This is my string valúe";
System.out.printf("Output : %s%n", original.replace("ú", "ú"));输出(我认为你想要的)
Output : This is my string valúe发布于 2016-11-26 02:33:51
您似乎希望使用XML字符实体。
阿帕奇公廊有一个用于此的方法(在StringEscapeUtils中)。
发布于 2016-11-26 02:40:28
我试图将上面的字符串编码成相当于UTF-8的字符串,但在这种情况下只将>特殊字符(ú)替换为-- "ú;“。
我不知道"ú;“是什么编码,但是您试过查看URLEncoder类吗?它不会按照您所要求的方式对字符串进行完全编码,但是它会去掉这个令人毛骨悚然的字符。
https://stackoverflow.com/questions/40814189
复制相似问题