Closed. This question needs details or clarity。它当前不接受答案。
想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
4年前关闭。
我要替换“ \ u0023 \ u0024 ab”
与:
“ \\ u0023 \\ u0024 ab”在将其存储在数据库中之前保持其编码。
\ u之后可以有许多不同的值,而不仅仅是0023、0024。
我尝试使用str.replace(“ \” \\“);或(” \ u“,” \\ u“),但在Java中不起作用,因为它将\ u0023视为一个字符。
任何建议如何实现这一目标?
我尝试过这样
使用此数字,只需将其打印出来即可:
(注意:代码未经测试:如果无法正常工作,请给我反馈)
希望这可以帮助!
想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
4年前关闭。
我要替换“ \ u0023 \ u0024 ab”
与:
“ \\ u0023 \\ u0024 ab”在将其存储在数据库中之前保持其编码。
\ u之后可以有许多不同的值,而不仅仅是0023、0024。
我尝试使用str.replace(“ \” \\“);或(” \ u“,” \\ u“),但在Java中不起作用,因为它将\ u0023视为一个字符。
任何建议如何实现这一目标?
我尝试过这样
public class test {
public static void main(String args[]) {
String s = "\u0023";
s = s.replace("\\", "\\\\");
System.out.println(s);
}
}
but it is giving following output as:
#
but I am expecting:
\\u0023
最佳答案
如第一个答案here所述,您可以使用以下方法检索字符的(数字)unicode值:
// works up to Unicode 3.0
String hexString = Integer.toHexString(s | 0x10000).substring(1);
使用此数字,只需将其打印出来即可:
System.out.println("\u" + hexString);
(注意:代码未经测试:如果无法正常工作,请给我反馈)
希望这可以帮助!
08-18 17:15