[ Dieser Artikel richtet sich an Windows 8.x- und Windows Phone 8.x-Entwickler, die Windows-Runtime-Apps schreiben. Wenn Sie für Windows 10 entwickeln, finden Sie weitere Informationen unter neueste Dokumentation]
Hier erfahren Sie, wie Sie Ihrer Windows Store-App, für die JavaScript verwendet und die unter Windows 8.1 ausgeführt wird, Dateiverarbeitungsfunktionen hinzufügen.
In jedem Abschnitt dieses Themas wird ein wichtiges Feature für die Dateiverarbeitung beschrieben. Es ist jeweils ein Link zu einem Thema mit weiteren Informationen vorhanden, und es wird angegeben, wie Sie im Begleitbeispiel zu Dateiverarbeitung von A bis Z des Themas schnell auf den relevanten Code zugreifen können.
Hinweis Viele Funktionen, die zum Interagieren mit Ordnern und Dateien verwendet werden, sind asynchron. Unter Asynchrone Programmierung in JavaScript erfahren Sie, wie Sie asynchrone JavaScript-Apps schreiben.
Grundlagen des Dateizugriffs: Aufzählen, Abrufen von Eigenschaften und Lesen und Schreiben von Daten
Sie können auf Dateien an Speicherorten wie Ordnern, Bibliotheken, Geräten oder Netzwerkadressen zugreifen, indem Sie nur eine einzige Codezeile verwenden – einen Aufruf der StorageFolder.getFilesAsync-Funktion. Unter Programmgesteuerter Dateizugriff finden Sie Schritt-für-Schritt-Anleitungen, in denen Aufgaben wie das Aufzählen der Dateien und Ordner der höchsten Ebene eines angegebenen Speicherorts und das Abfragen von Dateien an einem Speicherort veranschaulicht werden.
Die folgenden Schritte verdeutlichen, wie Sie Dateien in einem bestimmten Speicherort aufzählen:
Rufen Sie die StorageFolder.getFilesAsync-Funktion des zurückgegebenen StorageFolder-Objekts auf. Im Begleitbeispiel dieses Themas wird diese Methode ohne Parameter aufgerufen, sodass angegeben wird, dass alle Dateien zurückgegeben werden sollen. Alle Beispiele für das Aufrufen von StorageFolder.getFilesAsync mit einer Abfrage finden Sie unter Schnellstart: Programmgesteuerter Dateizugriff.
Nachdem die StorageFolder.getFilesAsync-Funktion abgeschlossen wurde, können Sie eine forEach-Schleife verwenden, um die einzelnen Dateien zu durchlaufen.
In diesem Codebeispiel werden alle Dateien in "Bilder" aufgezählt.
Dieser Screenshot aus dem Begleitbeispiel zeigt ein Beispiel für das Aufzählen der Dateien unter "Bilder".
Code im Beispiel: Das Beispiel enthält eine Seite mit dem Titel FileAccessBasics (Grundlagen für Dateizugriff), auf der die in diesem Abschnitt verwendeten Codebeispiele zu finden sind. Der relevante JavaScript- und HTML-Code ist in den Dateien FileAccessBasicsPage.js (OnEnumPicturesClick-Funktion) und FileAccessBasicsPage.html zusammengefasst.
Mithilfe von Dateieigenschaften wird ein Attribut einer Datei oder ihr Inhalt beschrieben oder quantifiziert. Zu den Dateieigenschaften gehören Daten wie Dateiname, Pfad, Dateigröße, Dateiattribute und das Datum des letzten Zugriffs. Unter Schnellstart: Abrufen der Eigenschaften einer Datei wird erläutert, wie Sie die Eigenschaften der obersten Ebene und die grundlegenden Eigenschaften einer Datei abrufen.
Die folgenden Schritte verdeutlichen, wie Sie entweder Dateieigenschaften der obersten Ebene oder die grundlegenden Eigenschaften abrufen:
In diesem Codebeispiel werden alle Dateien unter "Bilder" aufgezählt und die verschiedenen Dateieigenschaften der obersten Ebene und die grundlegenden Dateieigenschaften angezeigt. Beachten Sie, wie JavaScript-promises-Elemente verwendet werden, um die Ergebnisse von zwei asynchronen Vorgängen (StorageFolder.getFilesAsync und StorageFile.getBasicPropertiesAsync) zu synchronisieren. Weitere Informationen zur asynchronen Programmierung und promises in JavaScript finden Sie unter Asynchrone Programmierung in JavaScript.
Dieser Screenshot aus dem Begleitbeispiel zeigt ein Beispiel für das Abrufen der verschiedenen Dateieigenschaften der obersten Ebene und grundlegenden Dateieigenschaften.
Code im Beispiel: Das Beispiel enthält eine Seite mit dem Titel FileAccessBasics (Grundlagen für Dateizugriff), auf der die in diesem Abschnitt verwendeten Codebeispiele zu finden sind. Der relevante JavaScript- und HTML-Code ist in den Dateien FileAccessBasicsPage.js (OnGetFilePropertiesClick-Funktion) und FileAccessBasicsPage.html zusammengefasst.
Eine Windows Store-App liest und schreibt Dateien mithilfe der FileIO-Klasse. Unter Schnellstart: Lesen und Schreiben einer Datei finden Sie Codebeispiele, mit denen veranschaulicht wird, wie verschiedene Arten von Daten mithilfe der FileIO- und StorageFile-Klasse gelesen und geschrieben werden.
Schreiben von Text in eine Datei
Zum Schreiben in eine Datei müssen Sie zuerst ein StorageFile-Objekt beschaffen, um es an eine der FileIO-Funktionen für das Schreiben von Daten zu übergeben. Im Begleitbeispiel wird hierfür mithilfe der StorageFolder.createFileAsync-Funktion eine Datei erstellt.
Sobald Sie über ein StorageFile-Objekt verfügen, können Sie in dessen zugrunde liegende Datei über eine der überladenen FileIO.writeTextAsync-Funktionen Text schreiben.
In diesem Codebeispiel werden das aktuelle Datum und die aktuelle Uhrzeit in eine Beispieldatei geschrieben.
Zum Lesen des Inhalts einer Datei müssen Sie zuerst ein StorageFile-Objekt beschaffen, um es an eine der FileIO-Funktionen für das Lesen von Daten zu übergeben. Im Begleitbeispiel wird hierfür die StorageFolder.getFileAsync-Funktion aufgerufen.
Sobald Sie über ein StorageFile-Objekt verfügen, können Sie über eine der überladenen FileIO.readTextAsync-Funktionen Text aus dessen zugrunde liegender Datei lesen.
In diesem Codebeispiel wird der Inhalt aus einer Beispieldatei gelesen.
Dieser Screenshot zeigt ein Beispiel für die Ausführung des Beispiels und das Schreiben in die Beispieldatei.
Code im Beispiel: Das Beispiel enthält eine Seite mit dem Titel FileAccessBasics (Grundlagen für Dateizugriff), auf der die in diesem Abschnitt verwendeten Beispiele zu finden sind. Der relevante JavaScript- und HTML-Code ist in den Dateien FileAccessBasicsPage.js (Funktionen OnWriteTextToFileClick und OnReadTextFromFileClick) und FileAccessBasicsPage.html zusammengefasst.
Auswahlelemente – sowohl die Dateiauswahl als auch die Ordnerauswahl – werden zum Anzeigen einer Liste mit Dateien bzw. Ordnern verwendet, aus der Benutzer Elemente zur weiteren Verarbeitung auswählen können. Die Auswahl kann jeweils programmgesteuert so konfiguriert werden, dass anhand eines angegebenen Filters nach Dateien und Ordnern gesucht wird (z. B. Dateien mit speziellen Erweiterungen), bei einem bestimmten Ordner begonnen wird, ein bestimmter Ansichtsmodus angezeigt wird (Liste oder Miniaturansicht) oder verschiedene andere Vorgänge ausgeführt werden.
Mit den folgenden Verfahren wird veranschaulicht, wie Sie die unterschiedlichen Auswahlelemente für die Auswahl einer einzelnen Datei, mehrerer Dateien und eines einzelnen Ordners konfigurieren.
Konfigurieren einer Dateiauswahl für eine einzelne Datei
Rufen Sie die FileOpenPicker.pickSingleFileAsync-Funktion auf. Wenn die FileOpenPicker.pickSingleFileAsync -Funktion fertig ist, verfügt die App über Lese-/Schreibzugriff auf die ausgewählte Datei.
In diesem Codebeispiel wird eine Dateiauswahl zum Auswählen einer einzelnen Datei instanziiert und angezeigt.
Rufen Sie die FileOpenPicker.pickMultipleFileAsync-Funktion auf. Wenn die FileOpenPicker.pickMultipleFileAsync -Funktion abgeschlossen ist, verfügt die App über Lese-/Schreibzugriff auf die ausgewählten Dateien. Die ausgewählten Dateien werden mit einem Array von StorageFile-Objekten dargestellt. Mit der sizes-Eigenschaft des Arrays wird angegeben, wie viele Dateien ausgewählt wurden, sodass Sie eine for-Schleife mit standardmäßiger Arraynotation verwenden können, um auf die einzelnen StorageFile-Objekte zuzugreifen.
In diesem Codebeispiel wird eine Dateiauswahl zum Auswählen mehrerer Dateien instanziiert und angezeigt.
Dieser Screenshot zeigt die Ergebnisse nach Ausführung des Beispiels und der Auswahl von zwei Dateien ("sample1.png" und "sample2.png").
Code im Beispiel: Das Beispiel enthält eine Seite mit dem Titel File and Folder Pickers (Datei- und Ordnerauswahl), auf der die Aufgaben dieses Abschnitts veranschaulicht werden. Der JavaScript-Code und HTML-Code für dieses Beispiel ist in der Datei FilePickerPage.js bzw. FilePickerPage.html enthalten.
Unter Windows 8.1 können Benutzer OneDrive-Dateien als "Nur online verfügbar" kennzeichnen. Diese Dateien sind nicht verfügbar, wenn der Benutzer die Verbindung mit OneDrive getrennt hat. Mithilfe der neuen StorageFile.isAvailable-Eigenschaft können Sie die Verfügbarkeit einer Datei programmgesteuert ermitteln.
Diese Schritte verdeutlichen, wie Sie die Verfügbarkeit von Dateien mit der StorageFile.isAvailable-Eigenschaft ermitteln.
Rufen Sie die StorageFolder.getFilesAsync- Funktion des zurückgegebenen StorageFolder-Objekts auf. Im Begleitbeispiel dieses Themas wird diese Methode ohne Parameter aufgerufen, sodass angegeben wird, dass alle Dateien zurückgegeben werden sollen. Alle Beispiele für das Aufrufen von StorageFolder.getFilesAsync mit einer Abfrage finden Sie unter Schnellstart: Programmgesteuerter Dateizugriff.
Nachdem die StorageFolder.getFilesAsync-Funktion abgeschlossen wurde, können Sie eine forEach-Schleife verwenden, um die einzelnen Dateien zu durchlaufen.
In diesem Code werden alle Dateien unter „Bilder“ aufgezählt, und für jede Datei werden der Name, der Anbietername und die Verfügbarkeit angezeigt.
Dieser Screenshot zeigt Beispielergebnisse für die Überprüfung der Dateien unter "Bilder" auf ihre Verfügbarkeit.
Code im Beispiel: Das Beispiel enthält eine Seite mit dem Titel "OneDriveFilesPage" (OneDrive-Dateiseite) und einer Schaltfläche, mit der Sie für den lokalen Computer alle Dateien unter "Bilder" aufzählen können. Für jeden Dateinamen werden jeweils der Anbieter der Datei (z. B. "Dieser PC" oder "OneDrive") und die derzeitige Verfügbarkeit angezeigt. Der JavaScript-Code und HTML-Code für dieses Beispiel ist in der Datei OneDriveFilesPage.js bzw. OneDriveFilesPage.html enthalten.
Empfohlen. Mit der Ausführung des Zertifizierungskits für Windows-Apps können Sie sicherstellen, dass Ihre App die Anforderungen des Windows Store erfüllt. Es ist ratsam, das Kit jeweils auszuführen, wenn Sie der App umfangreichere Funktionen hinzufügen.
Sie sind fertig! Nachdem Sie jetzt unterschiedliche Funktionen zur Dateiverarbeitung für Ihre App untersucht haben, können Sie eine App wie im Begleitbeispiel zu Dateiverarbeitung von A bis Z erstellen.