【问题标题】:Flex3: Escaping Characters in XMLFlex3:在 XML 中转义字符
【发布时间】:2011-05-06 17:38:44
【问题描述】:

我正在使用 Flex 3、SDk 3.6、Flash Player 10。

如果我不在我的 XML 数据中转义字符,Flex 会给我语法错误。例如:

<mx:XML xmlns="">
       <group>
    <place stackName="Place1">
        <name>Place ABC</name>
        <encoding>ieqlFjiguM?_YHW\k@ZYd@UNAcA{AsGaLkJcRkAuBpm@BjBlJdBlJZ`@fCfBd@r@dFnMbCxF|B`Fn@fAmCViDHu@RoCnAsCfA}BhAe@`@OZu@fDSb@wAj@e@VUq@uB}@aAy@yCf@_AFs@i@Fe@y@}@Eo@c@@[[CcAQAk@ZQf@o@BIA?W</encoding>
    </place>
        </group>
</mx:XML>

在这种情况下,标签包围的数据会导致问题。如果我为所有特殊字符添加反斜杠,那么我不会收到任何错误,但我不能用它来制作谷歌地图编码的多边形。

编辑: 这些是我得到的错误:

1084:语法错误:在右括号之前需要冒号。
1084:语法错误:在&符号之前需要右括号。
1084: 语法错误:需要右括号 1093:语法错误。
1093:语法错误。 语法错误:在右大括号之前需要标识符。 【生成代码(使用-keep保存) 语法错误:在右括号之前需要右括号。 [生成代码(使用-keep保存)

【问题讨论】:

  • XML 不使用反斜杠来转义字符。请发布您看到的确切错误。
  • 嗨,约翰,感谢您的留言。这些是错误,我得到:1084:语法错误:在右括号之前需要冒号。 1084:语法错误:在&符号之前需要右括号。 1084:语法错误:需要正确的括号 1093:语法错误。 1093:语法错误。语法错误:在右大括号之前需要标识符。 [生成的代码(使用 -keep 保存)语法错误:在右括号之前需要右括号。 【生成代码(使用-keep保存)绝对是逃逸问题。如果我逃避奇怪的字符,我不会得到错误。有什么建议么?谢谢!
  • 这些看起来像是代码中的错误,而不是 XML 中的错误。此外,XML 中没有右括号。

标签: xml flex3 escaping


【解决方案1】:

我建议你使用CDATA标签来包含内容。

<mx:XML xmlns="">
    <group>
        <place stackName="Place1">
            <name>Place ABC</name>
            <encoding>
                <![CDATA[
                    ieqlFjiguM?_YHW\k@ZYd@UNAcA{AsGaLkJcRkAuBpm@BjBlJdBlJZ`@fCfBd@r@dFnMbCxF|B`Fn@fAmCViDHu@RoCnAsCfA}BhAe@`@OZu@fDSb@wAj@e@VUq@uB}@aAy@yCf@_AFs@i@Fe@y@}@Eo@c@@[[CcAQAk@ZQf@o@BIA?W
                ]]>
            </encoding>
        </place>
    </group>
</mx:XML>

【讨论】:

  • 您好 xavierzhao,谢谢您的建议。我试过了,但没有运气。
  • 这是什么?可以告诉我详情吗?
  • 嗨 xavierzhao,你是对的。我实际上有另一个导致问题的错误。当我修复错误并添加 CDATA 标记时,它起作用了。感谢您的帮助!
【解决方案2】:

好的,我遵循了这个tutorial 并从外部文件加载了 XML,它可以工作。我一定搞砸了 XML 的加载方式。

感谢 John 和 xavierzhao 试图帮助我。

【讨论】:

    猜你喜欢
    • 2013-08-30
    • 1970-01-01
    • 2011-05-08
    • 1970-01-01
    • 2012-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多