Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中Unicode字符串的自动格式化_Java_Unicode_String Formatting - Fatal编程技术网

Java中Unicode字符串的自动格式化

Java中Unicode字符串的自动格式化,java,unicode,string-formatting,Java,Unicode,String Formatting,我只是遇到了这样的事情: String sample = "somejunk+%3cfoobar%3e+morestuff"; 打印出来的样本如下所示: String sample = "somejunk+%3cfoobar%3e+morestuff"; 一些垃圾++更多东西 这是怎么回事?U+003c和U+003e分别是小于和大于符号的Unicode代码,这似乎不仅仅是巧合,但我从未听说过Java会自动执行类似的操作。我想进入谷歌是件容易的事,但事实证明谷歌不喜欢百分号。你可以这样做

我只是遇到了这样的事情:

String sample = "somejunk+%3cfoobar%3e+morestuff";
打印出来的样本如下所示:

String sample = "somejunk+%3cfoobar%3e+morestuff";
一些垃圾+
+更多东西


这是怎么回事?U+003c和U+003e分别是小于和大于符号的Unicode代码,这似乎不仅仅是巧合,但我从未听说过Java会自动执行类似的操作。我想进入谷歌是件容易的事,但事实证明谷歌不喜欢百分号。

你可以这样做

    String sample = "somejunk+%3cfoobar%3e+morestuff";
    String result = URLDecoder.decode(sample.replaceAll("\\+", "%2B"), "UTF8");

你可以这样做

    String sample = "somejunk+%3cfoobar%3e+morestuff";
    String result = URLDecoder.decode(sample.replaceAll("\\+", "%2B"), "UTF8");
该字符串可能是您在java中使用

该字符串可能是您在java中使用


Java确实支持
char
String
文本中的Unicode转义,但不支持URL编码

Unicode转义使用
'\uxxx'
,其中XXXX是十六进制的Unicode点


奇怪的小贴士:语法允许
'u'
多次出现,因此
'\uuuuu 0041'
是一个有效的Unicode转义(对于
'a'
)。

Java支持
字符
字符串
文本中的Unicode转义,但不支持URL编码

Unicode转义使用
'\uxxx'
,其中XXXX是十六进制的Unicode点


奇怪的小贴士:语法允许
'u'
多次出现,因此
'\uuuu 0041'
是一个有效的Unicode转义(对于
'a'
)。

Java不会这样做。看起来你有一个URL编码的字符串。是的,我猜你是在网页上看到的,而不是在实际编译的源文件中看到的:-)你是如何打印出来的,如果标准输出到哪个终端的?Java不会这样做。看起来你有一个URL编码的字符串。是的,我猜你在网页上看到了它,而不是在实际编译的源文件中:-)你是如何打印出来的,如果标准输出到哪个终端?结果很接近,在我的例子中,它实际上被用作Wicket ExternalLink。()结果很接近,在我的情况下,它实际上被用作一个外部导叶。()