1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
|
import flash.net.FileReference;
//
var data:ByteArray;
var fileReference:FileReference;
var mFileReference:FileReference;
//
var Tableau:Array = new Array();
//
var ATableau:Array = new Array();
var BTableau:Array = new Array();
var CTableau:Array = new Array();
var HTableau:Array = new Array();
var MTableau:Array = new Array();
var PTableau:Array = new Array();
//
var VTableau:Array = new Array();
//
preloader.gotoAndPlay(1);
preloader.visible=false;
ouvreFichierBtn.addEventListener(MouseEvent.CLICK, ouvreExplorer);
// Cette fonction est appelée quand j'appuis sur le bouton
function ouvreExplorer(event:MouseEvent):void {
trace("ouvreExplorer");
mFileReference=new FileReference();
mFileReference.addEventListener(Event.SELECT, selectFichier);
var swfTypeFilter:FileFilter=new FileFilter("Text Files","*.txt");
var allTypeFilter:FileFilter=new FileFilter("All Files (*.*)","*.*");
mFileReference.browse([swfTypeFilter, allTypeFilter]);
}
// Cette fonction est appelée quand l'utilisateur selectionne un ficher dans la fenetre explorer
function selectFichier(event:Event):void {
trace("le fichier est selectionné");
// Event dans le cas ou le chargement est bien passer
mFileReference.addEventListener(Event.COMPLETE, FinChargement);
// Event dans le cas ou il y a erreur de chargement
mFileReference.addEventListener(IOErrorEvent.IO_ERROR, ErreurChargement);
// Event de chargement pour le progresse Bare
mFileReference.addEventListener(ProgressEvent.PROGRESS, onProgress);
// demande a FileRefence de charger le fichier
mFileReference.load();
// Affiche progress bar
preloader.visible=true;
ouvreFichierBtn.visible=false;
}
// Cette fonction affiche la progression du vhargement du fichier dans progress
function onProgress(event:ProgressEvent):void {
if (event.bytesTotal==event.bytesLoaded) {
trace("charger");
preloader.visible=false;
} else {
//je ne fait rien;
}
}
// Cette fonction est appelée après que le fichier est loadé
function FinChargement(event:Event):void {
fileReference=event.target as FileReference;
trace(" fichier : "+(event.target.name));
// Cette partie hape les données dans data puis chaque ligne dans le tableau
// Initialiser(vider) le tableau utiliser array.length = 0 est plus rapide est perfermant que array.splice(0,array.length);
//Tableau.splice(0,Tableau.length);
Tableau.length=0;
data=fileReference["data"];
Tableau=(fileReference["data"].toString()).split("\n");
trace("Nombre de ligne : "+(Tableau.length));
//trace(Tableau[1]);
traitement();
trace("le fichier est completement charger");
}
//
function ErreurChargement(event:Event):void {
// Cache progress bar
preloader.visible=false;
ouvreFichierBtn.visible=true;
trace("erreur");
}
//
function traitement() {
var i:int;
for (i = 0; i < Tableau.length; i++) {
//ici mon traitement ....
}
} |
Partager