|
|
1
104
问题
解决方案我编写了一个字符串unescaper,它解决了OPs问题,而没有Apache代码的所有恼人之处。
如果它能帮助别人,欢迎你加入它,没有任何附加条件。如果你改进它,我很乐意你给我邮寄你的增强,但你当然不必。 |
|
|
2
49
下面是一个示例片段:
看起来像
引自JLS:
如果您的字符串可以包含八进制转义,那么您可能需要首先将它们转换为Unicode转义,或者使用另一种方法。
无关的
|
|
|
3
17
遇到类似的问题,对提出的解决方案也不满意,自己实现了这个。 也可用作 Github
|
|
4
10
|
|
|
5
9
我知道这个问题很老了,但是我想要一个不涉及JRE6以外的库的解决方案(即apachecommons是不可接受的),我使用内置的
|
|
|
6
6
我有点晚了,但我想我应该提供我的解决方案,因为我需要相同的功能。我决定使用Java编译器API,这样速度会变慢,但结果会更准确。基本上我创建一个类然后返回结果。方法如下:
它需要一个数组,以便您可以批量取消scape。因此,以下简单测试成功:
|
|
7
5
作为记录,如果使用Scala,可以执行以下操作:
|
|
|
8
4
Java 13添加了一个方法:
它在Java13和Java14中是一个预览特性,但在Java15中被提升为一个完整特性。 |
|
|
9
3
我应该注意到,apachecommons Lang3似乎没有遇到公认解决方案中指出的弱点。也就是说,
|
|
|
10
3
似乎可以处理一些更特殊的情况,例如unescapes:
|
|
|
11
0
如果要从文件中读取unicode转义字符,则很难做到这一点,因为字符串将与反斜杠的转义一起逐字读取:
在这里,当您从文件中读取第3行时,字符串/行将具有:
字符串中的char[]将显示:
Commons StringUnescape不会为您取消此功能(我尝试了unescapeXml())。你必须手动完成 described here 因此,子字符串“\u0020”应该变成1个字符“\u0020”
但是如果你用这个“\u0020”来做
|
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |