Flashhilfe.de - Flash Community

Laufwerke und Größe auslesen [AIR 2]

 


AntwortenRegistrieren Seite1  

Kerstin77#1
Benutzerbild von Kerstin77
Beiträge: 1004
Registriert: Jul 2008

13.12.2010, 17:40

Hallo,

ich versuche gerade von den vorhandenen Laufwerken die Speicherkapazität auszulesen, aber irgendwie kann ich mit den Werten nichts anfangen:

ActionScript:
1
2
3
4
5
6
7
private function getDrives():void {
      var os:String = Capabilities.os.substr(0, 3).toLowerCase();
      var currentDrives:Array = (os == "mac") ? new File('/Volumes/').getDirectoryListing() : File.getRootDirectories();
      for each(var file:File in currentDrives) {
          trace (file.name, file.size);
      }
}


Heraus kommt folgende Ausgabe:
C: 8192
D: 4096
G: 0

Tatsächlich sind es:
C: 180 GB von 244 GB frei
D: 220 GB von 221 GB frei
G: 1,89 GB von 7,32 GB frei

Selbst wenn ich versuche da irgendwas umzurechnen - die Werte passen definitiv nicht. Wie geht es richtig?

Kerstin
Wer Rechtschreibfehler findet, darf sie gerne behalten.
derFloh#2
Benutzerbild von derFloh
Beiträge: 992
Wohnort: ..::LAGE::..
Registriert: Apr 2006

13.12.2010, 20:35

hey,

vielleicht hilft dir applicationStorageDirectory weiter.

ActionScript:
1
2
3
4
5
import flash.filesystem.File;

var localStorage : File = File.applicationStorageDirectory;

trace( localStorage.spaceAvailable + " Bytes" );


edit:
die file-klasse hat noch weitere statische eigenschaften...
    *   File.applicationStorageDirectory – ein für jede installierte AIR-Anwendung eindeutiges Speicherverzeichnis
    * File.applicationDirectory – das schreibgeschützte Verzeichnis, in dem die Anwendung installiert wird (zusammen mit ggf. installierten Bestandselementen)
    * File.desktopDirectory – das Desktopverzeichnis des Benutzers
    * File.documentsDirectory – das Dokumentverzeichnis des Benutzers
    * File.userDirectory – das Benutzerverzeichnis

musste mal schauen, ob du damit was anfangen kannst...

grüße
 flo
www.heimatdesign.com
Florin Sans - Buy on myFonts / Fontspring
Geändert von derFloh am 13.12.10 um 20:36 Uhr
Kerstin77#3
Benutzerbild von Kerstin77
Beiträge: 1004
Registriert: Jul 2008

Themenautor/in

13.12.2010, 20:51

Hi Flo,

Danke für die Antwort, aber ich benötige die Größe des angeschlossenen USB-Sticks, da sollen Daten drauf gespeichert werden. Die Anwendung selbst ist auf dem Rechner installiert, sodaß mir applicationStorageDirectory wohl leider nichts nützt...

Kerstin
Wer Rechtschreibfehler findet, darf sie gerne behalten.
Sebastian#4
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

13.12.2010, 21:04

Hi Kerstin,

mit file.spaceAvailable sollte es gehen.

Ich habe es gerade mal am Mac getestet und das sah ganz gut aus.
ActionScript:
1
2
3
4
5
6
7
8
private function getDrives():void
{
     var os:String = Capabilities.os.substr(0, 3).toLowerCase();
     var currentDrives:Array = (os == "mac") ? new File('/Volumes/').getDirectoryListing() : File.getRootDirectories();
     for each(var file:File in currentDrives) {
        trace (file.name, file.spaceAvailable);
     }
}

Grüße,
Sebastian
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil
Geändert von Sebastian am 13.12.10 um 21:04 Uhr
Kerstin77#5
Benutzerbild von Kerstin77
Beiträge: 1004
Registriert: Jul 2008

Themenautor/in

13.12.2010, 21:23

Das sieht gut aus, danke schön :-)
Wer Rechtschreibfehler findet, darf sie gerne behalten.

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2022 Sebastian Wichmann - Flashhilfe.de