微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在XML属性值中包含&,<,>等

如何解决如何在XML属性值中包含&,<,>等

你将不得不逃脱

" to  &quot;
' to  &apos;
< to  &lt;
> to  &gt;
& to  &amp;

用于xml。

解决方法

我想创建一个XML文件,该文件将用于存储Java程序的结构。我能够成功解析Java程序并根据需要创建标签。当我尝试,包括我的标签中的源代码,就会出现问题,因为Java源代码可以使用的实体引用广大和保留的字符,如&<>&。我无法创建有效的XML。

我的XML应该像这样:

<?xml version="1.0"?>
<prg name="prg_name">
  <class name= "class_name>
    <parent>parent class</parent>
      <interface>Interface name</interface>
.
.
.
      <method name= "method_name">
        <statement>the ordinary java statement</statement>
        <if condition="Conditional Expression">
          <statement> true statements </statement>
        </if>
        <else>
          <statement> false statements </statement>
        </else>
        <statement> usual control statements </statement>
 .
 .
 .
      </method>
    </class>
 .
 .
 .
 </prg>

这样,但是问题是条件表达式if或其他语句中有很多&或其他保留的符号,这妨碍了XML的验证。由于所有这些数据(源代码)都是由用户提供的,因此我对此几乎没有控制权。逃避角色将花费大量时间。

我可以使用CDATA来转义元素文本,但不能用于包含条件表达式的属性值。我正在使用Antlr
Java语法来解析Java程序并获取标记的属性和内容。那么,还有其他解决方法吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。