Zurück   Flashforum > Flex und AIR > Adobe AIR

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 11-12-2007, 21:01   #1 (permalink)
Neuer User
 
Registriert seit: Aug 2002
Ort: zur zeit aachen (aber komme au
Beiträge: 64
FileStream / Netstream

hallo hat von euch schonmal jemand einen filestream an einen netstream angebunden oder irgendwo nen code snipet gesehen ?

würde gerne ne datei aus dem netz laden und direkt auf dem lokalen dateisystem speichern....

am besten das noch in nen thread ausgelagert der im hintergrund läuft

mfg enrico hofmann
gigo ist offline   Mit Zitat antworten
Alt 11-12-2007, 22:58   #2 (permalink)
Neuer User
 
Registriert seit: Aug 2002
Ort: zur zeit aachen (aber komme au
Beiträge: 64
ok ich habe das mit nem urlrequest gelöst funktioniert ganz gut....

ist noch nicht fertig aber es funktioniert auf jedenfall muss nur mal schauen was passiert wenn die datei fertig ist...
UPDATE
ok das oncomplete event funktioniert

PHP-Code:
package com.inviwa.video
{
    
import flash.events.*;
    
import flash.filesystem.*;
    
import flash.net.URLRequest;
    
import flash.net.URLStream;
    
import flash.utils.ByteArray;
    
import flash.utils.Timer;
        
    public class 
filedownload
    
{
        private var 
_file:File;
        private var 
_fileStream:FileStream = new FileStream();
        private var 
_fileSize:int 0;
        private var 
_FileSizeTotal:int 0;
        private var 
_timer:Timer = new Timer(10000);
        
        private function 
TimerClick(e:TimerEvent):void
        
{
            
trace(this._fileSize " : " this._FileSizeTotal);
        }
        
        public function 
download(_source:String):void
        
{
            
this._timer.addEventListener(TimerEvent.TIMER,this.TimerClick);
            
this._timer.start();
            var 
myRequest:URLStream = new URLStream();
            var 
_urlRequest:URLRequest = new URLRequest(_source);
            
this._file File.documentsDirectory.resolvePath("bla/video2.flv");
            
this._fileStream.open(this._fileFileMode.WRITE);
            
myRequest.addEventListener(ProgressEvent.PROGRESSthis.StartDownload);
            
myRequest.addEventListener(Event.COMPLETEthis.CloseFile);
            
myRequest.load(_urlRequest);
        }
        
        private function 
StartDownload(e:ProgressEvent):void
        
{
            
this._FileSizeTotal e.bytesTotal;
            var 
_ba:ByteArray = new ByteArray();
            
e.currentTarget.readBytes(_ba);
            
this._fileStream.writeBytes(_ba);
            
this._fileSize += _ba.bytesAvailable;
        }

        private function 
CloseFile(e:Event):void
        
{
            
trace("FERTIG");
            
this._fileStream.close();
            
this._timer.stop();    
            
        }
    }

UPDATE:
habe mal noch nen timer mit eingebaut.... der könnte zb dafür verwendet werden um prozentual die heruntergeladene menge auszulesen bzw das an eine progress bar anzubinden / sollte ja denke nicht das problem sein... mache ich morgen auf arbeit dann mal.

wie gesagt die sache geht bestimmt einfacher aber hoffe nen kleinen teil mit diesem code snipet beitragen zu können. ist erst mein dritter tag mit actionscript3... von daher es geht bestimmt einfacher und besser ...

was jetzt noch ganz schön wäre ne art self.dispose das ich die wieder freigegeben kann... oder sollte ich da lieber nen bool wert registriert und das extern über nen timer dann wieder freigeben ?

Geändert von gigo (11-12-2007 um 23:33 Uhr)
gigo ist offline   Mit Zitat antworten
Alt 12-02-2008, 16:14   #3 (permalink)
setUser(true);
 
Benutzerbild von Bartolomé
 
Registriert seit: Aug 2006
Ort: Zuhause
Beiträge: 137
Ja prima, genau so hab ichs auch gelöst. Wesentlich anders kann man es aber auch kaum machen oder?
Was meinst du aber mit wieder freigeben? Versteh da nicht so ganz worauf du hinaus willst...
Aber mich würde es interessieren
Bartolomé ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 14:49 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele