Programmazione Flex/AIR – Parser di file .csv con Actionscript
Potrà essere di utilità questo breve esempio che ci permetterà di parsare un comune file .csv (per ora posizionato all’interno del bundle applicazione) per poterlo successivamente manipolare e magari per popolare un arraycollection da utilizzare come DataProvider per un componente come un DataGrid.
Nello specifico, questo codice l’ho utilizzato per parsare un archivio storico in formato .csv di estrazioni al noto gioco WinForLife
import mx.collections.ArrayCollection;
import com.laziomatica.Estraz;
// Richiamato al creationComplete dell application
public function init():void{
progressAnalisi.setProgress(0,100);
var urlRequest:URLRequest = new URLRequest;
urlRequest.url = "storico.csv";
var url:URLLoader = new URLLoader;
url.dataFormat = URLLoaderDataFormat.TEXT;
url.addEventListener(Event.COMPLETE,loadedCSV);
url.load(urlRequest);
}
import com.laziomatica.estrazione;
[Bindable]
public var estrazioni:ArrayCollection = new ArrayCollection;
public function loadedCSV(e:Event):void{
var str:String = e.target.data as String;
var arr:Array = str.split("\n");
var estrazione:Array;
progressAnalisi.maximum = arr.length;
for(var i:int=0;i0) estrazioni.addItem(estrazioneOBJ);
progressAnalisi.setProgress(i,100);
progressAnalisi.setProgress( i,arr.length);
progressAnalisi.label = String(i*100/arr.length);
}
//Al termine la collection ottenuta può essere utilizzata in vari modi
dgEstrazioni.dataProvider = estrazioni;
}
Questo è tutto…nel prossimo esempio Flex vedremo come utilizzare questi dati all’interno dei Chart di Flexbuilder Pro.
Una volta ottenuto