flex:如何将int转换为Object中的String

时间:2013-03-18 08:13:36

标签: flex object arraycollection

private var xml:XML = <root><data><name>123456789012345678903333333333</name></data></root>

        public function xmlConversion(xml:XML):void
        {  
            _xmlDoc = new XMLDocument(xml.toString());  
            _decoder = new SimpleXMLDecoder(true);  
            _resultObj = _decoder.decodeXML(_xmlDoc);  
            _arrCol = new ArrayCollection();
            _arrCol.addItem(_resultObj.root.data);
            trace(_arrCol.getItemAt(0).name);

        } 

迹:

1.23456789012345e+29

我希望结果名称的值为:

123456789012345678903333333333

1 个答案:

答案 0 :(得分:0)

SimpleXMLDecoder decodeXML方法将“大数字字符串”转换为数字类型。 数字类型只能容纳17个(或16个?)数字...... 所以它总是以指数形式存储。

您可以做的是直接将XML节点用作String e.g

trace("Your xml node value as string:"+xml.data.name);

这将跟踪:您的xml节点值为字符串:123456789012345678903333333333

P.S。这应该是一个评论,但我还没有足够的代表。这样做