2010-07-26 5 views
0

В ActionScript У меня есть строка, какНаполнение коллекции массива с помощью анализа строки

str="subject,r1,r2:a,b:1,2:3,4"; 

динамически я разделить эту строку и построить коллекцию массива, как указано ниже

arraycoll.addItem({subject:a ,r1:1,r2:3}); 

этот пример одного набором

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

ответ

2
var str:String ="subject,r1,r2:a,b:1,2:3,4"; 
var parts:Array = str.split(":"); 
var props:Array = parts[0].split(","); 
var count:Number = parts[1].split(",").length; 
var items:Array = []; 
var values:Array = []; 
var i:Number, j:Number; 
for(i = 0; i < props.length; i++) 
    values.push(parts[i + 1].split(",")); 
for(i = 0; i < count; i++) 
{ 
    items.push({}); 
    for(var j = 0; j < props.length; j++) 
    { 
    items[i][props[j]] = values[j][i]; 
    } 
} 
var arCol:ArrayCollection = new ArrayCollection(items); 
+0

действительно хороший – dpaksp