【问题标题】:Is there a "syntactic sugar" way to escapte XML attributes values without String.replace?是否有一种“语法糖”方法可以在没有 String.replace 的情况下转义 XML 属性值?
【发布时间】:2011-07-06 21:35:38
【问题描述】:

来自 XML 规范...

允许属性值包含 单引号和双引号, 撇号或单引号字符 (') 可以表示为“'”, 和双引号字符 (") 为 “"”。

有没有比使用字符串查找/替换更标准或更简单的方法? (阿帕奇公地?)

【问题讨论】:

    标签: java xml escaping


    【解决方案1】:

    老实说,最好的方法是使用 XML API,而不是试图通过字符串操作来完成。

    有很多小事情很容易出错 - 为什么不使用专门构建的 API?

    【讨论】:

    • 我同意,但是哪一个? Java 文档构建器是一个活生生的地狱,我们没有你有的好的 .NET XMLBuilders ;)
    • @Eran:有很多可供选择,而且几乎所有这些都比进行字符串操作要好。自从我在 Java 中完成任何 XML 工作以来已经有一段时间了,但从我的记忆来看,JDOM 还不错。
    【解决方案2】:

    我同意 Jon Skeet 的观点。如果你真的别无选择,请考虑使用 commons-lang 中的StringEscapeUtils.escapeXml

    【讨论】:

    • 我想过,但没有意识到它可以帮助我摆脱个别属性...查看 API 文档,我猜它确实...谢谢
    猜你喜欢
    • 2016-02-08
    • 2011-09-30
    • 1970-01-01
    • 1970-01-01
    • 2018-07-29
    • 1970-01-01
    • 2013-09-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多