java - 如何处理/理解 Java 中字符串中的一些奇怪符号,如 %2B、%5E20?

标签 java escaping

我调试了现有的项目,得到了一个字符串变量:

"q=%2B%28%28%28keywords_en%3A%28pp%3F+OR+pp%29%29%29%29+%28+name%3A%28pp%3F%29%5E20+number%3A%28pp%3F%29%5E20+creator%3A%28OR%5C%3Art.org.WuoUser%5C%3A11%29%5E2+modifier%3A%28OR%5C%3Art.org.WuoUser%5C%3A11%29%5E2+%29+_val_%3A%22recip%28rord%28modifyTimestamp%29%2C1%2C1000%2C1000%29%22%5E2";

我有点困惑这些“%2B、%28、%3A、%5E、%5E20”代表什么? 如果他们是一些转义字符,我怎样才能得到相应的人类可读的字母? 如果有人能提供一些帮助,我们将不胜感激。 提前致谢。

最佳答案

您可以使用以下方式对其进行解码:

String decodedString = URLDecoder.decode(encodedString, "UTF-8");

(如果不是 UTF-8,则使用任何合适的字符编码)。

关于java - 如何处理/理解 Java 中字符串中的一些奇怪符号,如 %2B、%5E20?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10202215/

相关文章:

Java 运行时 exec() 无法正确转义字符

java - JPA 与 JDBC、存储过程和 Co. 或如何说服老派程序员尝试 ORM?

java - 如何在数组列表中搜索重复对象(由一个字段确定)并合并它们

java - 下载并使用 htmlunit 获取原始文件名?

java - 如何向 JRadioButton 标签添加 Action 监听器?

java - 使用JEST进行分析API调用

javascript - 如何将 unicode 转义序列 URL 转换为 python unicode?

c++ - 转义 printf() 中的所有特殊字符

c# - 如何转义 JSON 字符串?

java - 编写EnhancedUserType在Hibernate中保存类似字符串的信息,避免SQL注入(inject)