Java中如何反转义XML?现有方案失效求帮助
Java XML反转义正确实现方案
废弃方法替代方案:
org.apache.commons.lang3.StringEscapeUtils.unescapeXml已废弃,官方替代是org.apache.commons.text.StringEscapeUtils类下的unescapeXml方法,注意包名是commons.text而非lang3。正确依赖配置:
Maven:<dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-text</artifactId> <version>1.10.0</version> <!-- 或更高稳定版本 --> </dependency>Gradle:
implementation 'org.apache.commons:commons-text:1.10.0'代码示例:
import org.apache.commons.text.StringEscapeUtils; public class XmlUnescapeExample { public static void main(String[] args) { String escapedXml = "<root>&test;</root>"; String unescapedXml = StringEscapeUtils.unescapeXml(escapedXml); System.out.println(unescapedXml); // 输出: <root>&test;</root> } }常见问题排查:
- 确认导入的包是
org.apache.commons.text.StringEscapeUtils,而非org.apache.commons.lang3.StringEscapeUtils - 检查项目依赖是否冲突,可通过
mvn dependency:tree(Maven)或gradle dependencies(Gradle)查看是否有旧版本的commons-text或commons-lang3干扰 - 若仍无法找到方法,尝试清理项目依赖缓存(Maven:
mvn clean install -U;Gradle:./gradlew clean build --refresh-dependencies)
- 确认导入的包是
内容的提问来源于stack exchange,提问作者Tomáš Mejzr
相关产品推荐
相关产品推荐

