如何使用actionscript从xml树中提取值
我有一个xml树,如下所示如何使用actionscript从xml树中提取值,actionscript,Actionscript,我有一个xml树,如下所示 <Response> <Terminal> <Name>m1</Name> <Value><Array1><DBL><Val>-0.143077</Val></DBL></Array1></Value> </Terminal> <Terminal> <Name>m3</Name>
<Response>
<Terminal>
<Name>m1</Name>
<Value><Array1><DBL><Val>-0.143077</Val></DBL></Array1></Value>
</Terminal>
<Terminal>
<Name>m3</Name>
<Value><Array3><DBL><Val>-0.876611</Val></DBL></Array3></Value>
</Terminal>
<Terminal>
<Name>m2</Name>
<Value><Array2><DBL><Val>-0.459437</Val></DBL></Array2></Value>
</Terminal>
</Response>
m1
-0.143077
m3
-0.876611
平方米
-0.459437
我必须使用动作脚本提取m1、m2、m3值
有人能帮我写这段代码吗
下面的代码是否足够
for (var i=0; i<xml.Terminal.length(); i++) {
if (xml.Terminal.Name.text()=="m1") {
voltage=xml.Terminal.Value.Array1.DBL.Val.text()
}
else if (xml.Terminal[i].Name.text()=="m2") {
current=xml.Terminal.Value.Array2.DBL.Val.text();
}
else if (xml.Terminal[i].Name.text()=="m3") {
temperature=xml.Terminal.Value.Array3.DBL.Val.text();
}
}
Menu_Content1.volt_val.text = voltage;
Menu_Content1.curr_val.text = current;
Menu_Content1.temp_val.text = temperature;
)
for(var i=0;i是的,您的想法是右移。但您应该首先在对象中加载xml文件。
您可以在项目中使用XML like或。要解析XML中常见的格式化标记,您必须首先将它们放入父级标记中。在您的案例中,创建如下XML
<Response>
<**PARENT_TAG**>
<Terminal>
<Name>m1</Name>
<Value><Array1><DBL><Val>-0.143077</Val></DBL></Array1></Value>
</Terminal>
<Terminal>
<Name>m3</Name>
<Value><Array3><DBL><Val>-0.876611</Val></DBL></Array3></Value>
</Terminal>
<Terminal>
<Name>m2</Name>
<Value><Array2><DBL><Val>-0.459437</Val></DBL></Array2></Value>
</Terminal>
</**PARENT_TAG**>
</Response>
m1
-0.143077
m3
-0.876611
平方米
-0.459437
在actionscript中解析XML之后非常容易,您只需创建一个XML对象,然后使用DOM格式获取特定标记的值作为示例
var result:XML = new XML(event.target.data);
for(var i:int=0; i<result.PARENT_TAG.length; i++)
{
trace(result.PARENT_TAG.Terminal[i].Name);
}
var结果:XML=newxml(event.target.data);
对于(变量i:int=0;i