Внешний XML и AS3 - PullRequest
       22

Внешний XML и AS3

0 голосов
/ 12 марта 2010

Я хочу передать внешнюю XML переменную. Как мне это сделать?

ЧТО Я ПОСЛЕ
- обновить мою переменную с COUNT XML

ЧТО Я НЕ ПОЛУЧУ
- Целое число в строковые значения
Передать XML в переменную

ссылка http://videodnd.weebly.com/

time.xml

<?xml version="1.0" encoding="utf-8"?>
<SESSION>
    <COUNT TITLE="starting position">-77777</COUNT>
</SESSION>

xml.fla

//VARIABLES
/*CHANGE TO COUNT
MyString or count, I don't know if it was necessary to go from int to String 
*/
var myString:String = "";       
var count:int = int(myString);
    trace(count);

//LOAD XML
var myXML:XML;
var myLoader:URLLoader = new URLLoader();
myLoader.load(new URLRequest("time.xml"));
myLoader.addEventListener(Event.COMPLETE, processXML);

//PARSE XML
function processXML(e:Event):void {
    myXML = new XML(e.target.data);
    trace(myXML.COUNT.*);
    trace(myXML);

//TEXT 
var text:TextField = new TextField(); 
    text.text = myXML.COUNT.*; 
    addChild(text);
}

Окно вывода «трассирует до окна вывода правильно»

//zero should read -77777 if tracing correctly
0
-77777
<SESSION>
  <COUNT TITLE="starting position">-77777</COUNT>
</SESSION>

ошибка
ошибки принуждения и нулевые ссылки со всем, что я пытаюсь.

1 Ответ

0 голосов
/ 12 марта 2010

Немного неясно, что вы спрашиваете, но вот как вы можете извлечь данные из XML в виде строки или целого числа:

//VARIABLES
var myString:String = "";       
var count:int = 0;

//LOAD XML
var myXML:XML;
var myLoader:URLLoader = new URLLoader();
myLoader.load(new URLRequest("time.xml"));
myLoader.addEventListener(Event.COMPLETE, processXML);

//PARSE XML
function processXML(e:Event):void {
    myXML = new XML(e.target.data);
    trace(myXML.COUNT.text()); //-77777

    //grab the data as a string
    myString = myXML.COUNT.text();

    //grab the data as an int
    count = int(myXML.COUNT.text());

    trace("String: ", myString);
    trace("Int: ", count);
    trace(count - 1); //just to show you that it's a number that you can do math with (-77778)

    //TEXT 
    var text:TextField = new TextField(); 
    text.text = myString; 
    addChild(text);
}
...