更改XML的内容

时间:2015-11-05 08:29:34

标签: xml actionscript-3

有一个enableGrouping: true文件,它由各种节点组成。我需要更改节点的一个属性,然后将所有内容覆盖为新版本。我发现that SO问题,但XML根本无法理解我的XML文件,并且会抛出有关语法的错误。

我在程序中进行了计算,应该用XML中的特定属性编写。然后用以前的(覆盖)替换文件的更新版本。

我的XML文件庞大而复杂,因此我无法将所有代码放在此处。但是我可以告诉你,我从文件中获取了所有内容并将其放在代码中,如上面的链接。

Flash IDE

Flash预计在<?xml version="1.0" encoding="UTF-8"?><!--I guess this part is not recognised and need to be added just before to save--> <Something x="0" y="0" width="1437.5" height="1010"> 之后会;,并且会在预期停止。

更改XML属性的正确方法是什么?

编辑:

我通过切片来使用XML文件的数组。然后我添加必要的部分并保持这样。但我想知道有没有更好的方法来做到这一点而不会搞乱数组。

1 个答案:

答案 0 :(得分:1)

要更改XML属性,您可以使用E4XECMAScript for XML),如下所示:

var xml:XML = <objects>
    <object id="mc_01" x="0" y="0" width="1437.5" height="1010" />
    <object id="mc_02" x="300" y="400" width="150" height="100" />
    <object id="mc_03" x="120" y="0" width="50" height="30" />
</objects>;

// select the object with its id (for example), and change its "x" attribute
xml.*.(@id == 'mc_02').@x = 800;

trace(xml);

// gives
//
//  <objects>
//    <object id="mc_01" x="0" y="0" width="1437.5" height="1010"/>
//    <object id="mc_02" x="800" y="400" width="150" height="100"/>
//    <object id="mc_03" x="120" y="0" width="50" height="30"/>
//  </objects>

有关在ActionScript 3中使用XML的更多信息,请查看here

希望可以提供帮助。