Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var arrAllSave:ArrayCollection = new ArrayCollection();
- for(var i:int = 0;i<arrAll.length; i++)
- {
- try
- {
- var tempCon:ConnectImage = arrAll[i];
- arrAllSave.addItem({item:arrAll[i], type:"ConnectImage" });
- }
- catch(er:Error)
- {
- var tempImage:Image = arrAll[i];
- var objImage:ClassImage = new ClassImage(arrAll[i]);
- arrAllSave.addItem({item:objImage, type:"Image" });
- }
- }
- // First, generate your ByteArray from the VO.
- var byteArray : ByteArray = new ByteArray();
- byteArray.writeObject( arrAll );
- // Resolve your file location.
- //var file : File = File.applicationStorageDirectory.resolvePath( "testFile.ri" );
- var mapName:String = txtMapTitle.text;
- var file : File = File.applicationStorageDirectory.resolvePath( 'Saved Maps/'+mapName+'.imm' );
- if(file.exists == true)
- {
- lblWarn.text = "Map already Exists. Please enter Defferent Map Title";
- }
- else if(mapName == "")
- {
- lblWarn.text = "Please enter a title for Map.";
- }
- else
- {
- var fileStream:FileStream = new FileStream();
- // Save the file to the given location.
- fileStream.open(file, FileMode.WRITE);
- fileStream.writeBytes( byteArray );
- fileStream.close();
- lblWarn.text = "Map Saved successfully";
- }
- }
- protected function btnLoadMap_clickHandler(event:MouseEvent):void
- {
- // Execute the file load.
- var loadFileName:String = "t1";
- var request : URLRequest = new URLRequest ( "app-storage:/"+"Saved Maps/"+loadFileName+".imm" );
- var receptor : URLLoader = new URLLoader( request );
- // Make sure our content is interpreted as a ByteArray.
- receptor.dataFormat = URLLoaderDataFormat.BINARY;
- receptor.addEventListener( Event.COMPLETE, fileLoadedHandler );
- }
- private function fileLoadedHandler ( event : Event ) : void
- {
- // Retrieve the event target, cast as the URLLoader we just created
- var loader : URLLoader = event.target as URLLoader;
- // Retrieve the loaded data. We know it's a ByteArray, so let's cast it as well.
- var data : ByteArray = loader.data as ByteArray;
- // Use the ByteArray.readObject method to reconstruct the object.
- var obj : Object = data.readObject();
- // Cast the object and assign it to our data container.
- var loadArrAll:ArrayCollection = obj as ArrayCollection;
- }
- public function readExternal(input:IDataInput):void - here you restore object
- public function writeExternal(output:IDataOutput):void - here you saving object
Add Comment
Please, Sign In to add comment