Home Tutorials Forums Articles Blogs Movies Library Employment Press Buy templates

Go Back   ActionScript.org Forums > Desktop, Mobile and non-browser Environments > AIR (Apollo)

Reply
 
Thread Tools Rate Thread Display Modes
Old 01-15-2008, 08:04 PM   #1
xwielder
Senior Member
 
Join Date: Aug 2007
Location: NE Ohio
Posts: 524
Send a message via AIM to xwielder
Default Read / Write

Suppose I have the following code:
ActionScript Code:
var something:String = ""; myButton.addEventListener(MouseEvent.CLICK, iGotClicked); function iGotClicked (event:MouseEvent) {     something = "Happy Day";     writeLastLocation (); } // WRITE var writeFileStream:FileStream = new FileStream(); function writeLastLocation () {     var writeFile:File = File.applicationStorageDirectory;      var wrietFileString:String = (writeFile.nativePath + "\\FileLastLocation.txt");     writeFile = writeFile.resolvePath(wrietFileString);     writeFileStream.addEventListener(Event.COMPLETE, completedWriteLastLocation);     writeFileStream.openAsync (writeFile, FileMode.WRITE)} function completedWriteLastLocation(event:Event):void {     trace("Hello");     writeFileStream.writeUTFBytes (something);     writeFileStream.close ();     writeFileStream.removeEventListener(Event.COMPLETE, completedWriteLastLocation);     readLastLocation (); } // READ var readString:String = ""; var readFileStream:FileStream = new FileStream(); function readLastLocation () {     var readFile:File = File.applicationStorageDirectory;        var readFileString:String = (readFile.nativePath + "\\FileLastLocation.txt");     readFile = readFile.resolvePath(readFileString);     readFileStream.addEventListener(Event.COMPLETE, completedReadLastLocation);     readFileStream.openAsync(readFile, FileMode.READ); } function completedReadLastLocation(event:Event):void {     trace("World");     readString = readFileStream.readMultiByte(readFileStream.bytesAvailable, "iso-8859-1");     readFileStream.close ();     readFileStream.removeEventListener(Event.COMPLETE, completedReadLastLocation);     trace("readString = " + readString); }

According to Adobe's documents: http://livedocs.adobe.com/labs/air/1...system_32.html

The above code should write a file, then read it back.

What's odd is I never get the "Hello" trace. Here's what's even more strange...

If I call the readLastLocation() function within iGotClicked (example
ActionScript Code:
function iGotClicked (event:MouseEvent) {     something = "Happy Day";     readLastLocation (); }

I get the "World" trace.

So for some reason, writeFileStream.addEventListener(Event.COMPLETE, completedWriteLastLocation); is never getting fired, but readFileStream.addEventListener(Event.COMPLETE, completedReadLastLocation); is.

Any ideas on what I'm doing wrong?


NOTE:
There were a few times when I removed the COMPLETE eventListeners and forced the subfunctions, but I kept getting errors that the file was open and there was a sharing violation blah blah blah. Even though I .close()'d the filestream.
xwielder is offline   Reply With Quote
Old 01-16-2008, 05:52 PM   #2
xwielder
Senior Member
 
Join Date: Aug 2007
Location: NE Ohio
Posts: 524
Send a message via AIM to xwielder
Default Got it.

Got it.

ActionScript Code:
// --------------------------------------------START------------------------------------- // WRITE IT var strr:String = ""; var writeFileStream:FileStream = new FileStream (); function writeLastLocation () {     var writeFile:File = File.applicationStorageDirectory;     var writeFileString:String = (writeFile.nativePath + "\\JeopardyFileLastLocation.txt");     writeFile = writeFile.resolvePath(writeFileString);     writeFileStream.open (writeFile, FileMode.WRITE);        completedWriteLastLocation (); } function completedWriteLastLocation():void {     var pattern1:RegExp = /(\\)/gi;     var thisString:String = fooBar.replace(pattern1, "/");     writeFileStream.writeUTFBytes (thisString);     writeFileStream.close ();     readLastLocation (); } // READ IT var readFileStream:FileStream = new FileStream (); function readLastLocation () {     var readFile:File = File.applicationStorageDirectory;     var readFileString:String = (readFile.nativePath + "\\JeopardyFileLastLocation.txt");     readFile = readFile.resolvePath(readFileString);     readFileStream.open(readFile, FileMode.READ);     completedReadLastLocation(); } function completedReadLastLocation():void {     readString = readFileStream.readMultiByte(readFileStream.bytesAvailable, "iso-8859-1");     readFileStream.close ();     writeFileStream.close(); } // --------------------------------------------STOP--------------------------------------
xwielder is offline   Reply With Quote
Old 01-23-2008, 01:51 PM   #3
xwielder
Senior Member
 
Join Date: Aug 2007
Location: NE Ohio
Posts: 524
Send a message via AIM to xwielder
Default even better

Better yet:

ActionScript Code:
// --------------------------------------------START------------------------------------- // WRITE IT function writeLastLocation () {     var writeFileStream:FileStream = new FileStream ();     var writeFile:File = File.applicationStorageDirectory;     var writeFileString:String = (writeFile.nativePath + "\\JeopardyFileLastLocation.txt");     writeFile = writeFile.resolvePath(writeFileString);     writeFileStream.open (writeFile, FileMode.WRITE);     var pattern1:RegExp = /(\\)/gi;     var thisString:String = fooBar.replace(pattern1, "/");     writeFileStream.writeUTFBytes (thisString);     writeFileStream.close ();     readLastLocation (); } // READ IT function readLastLocation () {     var readFileStream:FileStream = new FileStream ();     var readFile:File = File.applicationStorageDirectory;     var readFileString:String = (readFile.nativePath + "\\JeopardyFileLastLocation.txt");     readFile = readFile.resolvePath(readFileString);     readFileStream.open(readFile, FileMode.READ);     readString = readFileStream.readMultiByte(readFileStream.bytesAvailable, "iso-8859-1");     readFileStream.close (); } // --------------------------------------------STOP--------------------------------------
xwielder is offline   Reply With Quote
Reply


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Dynamicaly read variable in embed tag drliebs ActionScript 1.0 (and below) 1 05-23-2006 10:40 AM
read and write cookies from flash Navarone ActionScript 2.0 2 04-29-2005 03:04 PM
flash does not read .txt file correctly |\/|cpalmer ActionScript 1.0 (and below) 8 02-16-2005 07:41 PM
write to text file (reading from cache) alpsoy ActionScript 1.0 (and below) 3 01-28-2005 08:14 AM
constantly read an xml file for changes gobblez ActionScript 2.0 0 12-24-2004 02:13 AM


All times are GMT. The time now is 12:37 PM.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
Ad Management plugin by RedTyger
Copyright 2000-2009 ActionScript.org. All Rights Reserved.
Your use of this site is subject to our Privacy Policy and Terms of Use.