Spara textfil lokalt

 

Denna guide beskriver hur man sparar en textfil lokalt på användarens dator med ActionScript 3. Att spara en fil är numera möjligt sen Flash player 10 kom ut. Eftersom det inte stöds i tidigare versioner måste du utveckla för version 10 eller senare av Flash player för att kunna spara filer till användarens dator.

Koden nedan sparar texten i tMessage till användarens dator. Koden öppnar en dialogruta som låter användaren välja var han vill spara filen.

var tFR:FileReference = new FileReference();
var tMessage:String = 'Hello World';
tFR.save(tMessage, '.txt');

Detta är faktiskt all kod som behövs för att spara filen lokalt. Låt oss gå igenom vad vi kan göra med koden. Klassen FileReference har en metod med följande definition.

public function save(data:*, defaultFileName:String = null):void 

data är den information som du vill spara. Data kan vara av olika format och kommer att behandlas därefter:

  • Om data är av typen String så sparas den som en UTF-8 textfil.
  • Om data är av typen XML så skrivs den till en textfil med all XML formatering bibehållen.
  • Om data är ett ByteArray objekt så skrivs information rakt av till en fil.
  • Om data är null kastas ett fel av typen ArgumentError.
  • Om data inte är något av ovanstående så anropas objektets toString() metod och resultatet skrivs till en textfil. Misslyckas detta kastas ett fel av typen ArgumentError.

defaultFileName är det filnamn som visas från början när användaren får fram dialogrutan. Denna parameter är valfri.

Save metoden öppnar först en dialogruta där användaren får ange ett filnamn och plats där han vill spara filen. Processen att spara börjar när användaren väl plats och namn och bekräftat att han vill spara.

Är ni i behov av en flashutvecklare? Kontakta mig i så fall här. Vill ni veta mer om mig som frilansande flashutvecklare så hittar ni det här. Fler guider om ActionScript 3 för flashutvecklare hittar ni här.