проектирование XML с большими наборами данных для ActionScript3 - PullRequest
0 голосов
/ 07 мая 2009

У меня есть очень большой файл XML, который содержит около 40000 данных, и когда я пытаюсь загрузить XML с помощью Actionscript3, а затем заполнить данные в массив, Я получаю следующую ошибку:

Сценарий выполнялся дольше, чем период ожидания по умолчанию 15 секунд.

Есть ли способ обойти эту проблему тайм-аута? Вот пример XML

<Map>
   <Data>0</Data>
   <Data>1</Data>
   <Data>2</Data>
   <Data>3</Data>
    // continue for many many times
   <Data>39999</Data>
</Map>

Кажется, что разрыв строки находится в цикле for. Код такой

var aNumberArray:Array = new Array( 200 * 200 );
var nRowIndex:int = 0;
for ( ; 200 > nRowIndex; ++nRowIndex ) {
    var nColumnIndex:int = 0;
    for ( ; 200 > nColumnIndex; ++nColumnIndex ) {
        var nIndex:int = nColumnIndex + nRowIndex * 200;
        // assume cXMLMap is already a pre read XML class
        aNumberArray[ nIndex ] = new int( cXMLMap.Data[ nIndex ] );
    }
}

Я подозреваю, что cXMLMap.Data[ nIndex ] занимает много времени, чтобы получить переменную из XML. Пожалуйста, совет.

1 Ответ

0 голосов
/ 07 мая 2009

Я нашел ответ, Мне нужно изменить формат XML на что-то вроде ниже

// given a data set of 200 X 200 fields
<Map>
    <Data>00 10 20 30 40 ..... 1990</Data>
    <Data>00 11 21 31 41 ..... 1991</Data>
    // repeat until reach 200 times
    <Data>2000 2001 2002 2003 2004 ..... 199200</Data>
</Map>

Это сократит продолжительность разбора XML, однако мне нужно написать код для токенизации строки в actionscript3.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...