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视为一个字符。

任何建议如何实现这一目标?

我尝试过这样

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