Freigeben über


Verwalten von Dateien, Ordnern und Bibliotheken mit dem Windows App SDK

Das Windows App SDK bietet leistungsstarke Dateiverwaltungsfunktionen für verpackte Apps. Sie können APIs aus den Namespaces "Windows.Storage", "Windows.Storage.Streams" und "Microsoft.Windows.Storage.Pickers" verwenden, um verschiedene Datenformate in Dateien effizient zu lesen und zu schreiben sowie Dateien und Ordner zu verwalten.

Es gibt eine Vielzahl von APIs im Zusammenhang mit Dateien, Ordnern, Bibliotheken und Einstellungen für Windows-Desktop-Apps ab Windows 10. Diese Features sind über eine Kombination aus Windows App SDK, Windows-Runtime (WinRT) und .NET-APIs verfügbar, die vom Windows App SDK, Windows SDK und .NET SDK bereitgestellt werden.

Verwenden Sie die Windows App SDK-Auswahlwerkzeuge zum Lesen und Schreiben von Daten.

Im Windows App SDK, Version 1.8 und höher, sind Auswahl-APIs verfügbar. Die folgenden Themen enthalten Informationen zur Verwendung der Auswahl-APIs, damit Benutzer Dateien und Ordner in Ihrer App öffnen und speichern können:

Thema Description
Öffnen von Dateien und Ordnern mit Pickern in WinUI Verwenden Sie die Windows App SDK-Datei- und Ordnerauswahl, um Benutzern das Durchsuchen und Auswählen von Dateien oder Ordnern in Ihrer WinUI-App zu ermöglichen. Die Auswahl-APIs bieten eine vertraute Windows-Umgebung, mit der Benutzer ihre Geräte- und Cloudspeicherorte navigieren können. Erfahren Sie, wie Sie Benutzern die Auswahl einer Datei oder eines Ordners ermöglichen, die mit den Klassen FileOpenPicker und FolderPicker geöffnet werden sollen.
Speichern einer Datei mit dem Windows App SDK-Auswahlwerkzeug in WinUI Beim Erstellen von WinUI-Apps und anderen Windows-Client-Apps müssen Benutzer häufig Dateien wie Dokumente, Bilder oder andere Inhalte an bestimmten Speicherorten auf ihrem Gerät speichern. Das Windows App SDK bietet die FileSavePicker-Klasse zum Erstellen einer konsistenten, benutzerfreundlichen Benutzeroberfläche, mit der Benutzer auswählen können, wo Dateien gespeichert werden sollen und was sie nennen sollen.

Wichtige Unterschiede zwischen WinRT- und Windows-App-SDK-Auswahlelementen

Im Folgenden sind einige wichtige Unterschiede zu den winRT Windows.Storage.Pickers aufgeführt, die von UWP-Apps verwendet werden:

  • Im Gegensatz zur vorhandenen Windows.Storage.Pickers-API , die StorageFile - und StorageFolder-Objekte zurückgibt, gibt diese neue API zeichenfolgenbasierte Pfade über PickFileResult - und PickFolderResult-Klassen zurück. Dies vereinfacht die API und vermeidet Komplikationen mit Speicherfunktionen in erhöhten Szenarien.
  • Ebenso wurde die FileSavePicker.SuggestedSaveFile-Eigenschaft (die eine StorageFile zurückgegeben hat) ersetzt. Die Funktionalität wird jetzt durch zwei Zeichenfolgeneigenschaften abgedeckt: SuggestedFolder und SuggestedFileName. Auf diese Weise können Sie den Ordner und dateinamen für das Dialogfeld "Speichern" vorschlagen.
  • Alle neuen Picker wurden speziell für Desktop-Apps entwickelt und verwenden eine WindowId-Eigenschaft, um die Picker mit ihrem Hostfenster zu verknüpfen und das WinRT.Interop.InitializeWithWindow.Initialize Muster zu ersetzen.
  • Mit den neuen Auswahlern können Entwickler sie verwenden, ohne dass FileTypeFilter oder FileTypeChoices angegeben werden müssen. Während UWP-Auswahl Ausnahmen auslöst, wenn diese Eigenschaften nicht festgelegt sind, werden in der neuen Auswahl standardmäßig alle Dateien angezeigt, wenn Entwickler diese Eigenschaften nicht explizit konfigurieren.
  • Der Speicherort der Heimnetzgruppe wurde von der neuen PickerLocationId-Enumeration ausgeschlossen, da sie ab Windows 10 nicht mehr unterstützt wird.
  • FolderPicker.FileTypeFilter wurde ausgeschlossen, da er für die Ordnerauswahl nicht funktionell geeignet war.
  • Ausschließen von Methoden und Eigenschaften, die bereits als veraltet gekennzeichnet sind oder "Nicht verwenden". z. B. PickSingleFileAndContinue, ContinuationData, ResumePickSingleFileAsync usw.
  • Ausschließen von Methoden und Eigenschaften für den Mehrbenutzermodus, da die neuen APIs derzeit für Desktopszenarien konzipiert sind, in denen jeder Benutzer über eine eigene interaktive Sitzung verfügt und jede Sitzung vollständig unabhängig von den anderen Sitzungen auf dem Gerät ist. Dies steht im Gegensatz zu Xbox oder anderen Geräten mit mehreren Benutzern.

Zugreifen auf Daten mit WinRT-Speicher-APIs

Verpackte Apps haben Zugriff auf alle WinRT-Speicher-APIs, die für UWP-Apps verfügbar sind. Unabhängig davon, ob Sie eine vorhandene UWP-App migrieren oder eine neue App erstellen, können Sie diese APIs verwenden, um Daten zu lesen und zu schreiben. Beispiele für die Verwendung der Speicher-APIs in einer WinUI-App finden Sie unter Access-Dateien und -Ordner mit Windows App SDK und WinRT-APIs.

Verwenden von .NET-Datei-APIs für den Datenzugriff

Zusätzlich zu den WinRT-APIs können verpackte Desktop-Apps die .NET-APIs im System.IO-Namespace verwenden, um Daten zu lesen und zu schreiben. Wenn ein neues WinUI 3-Projekt erstellt wird, enthält die Package.appxmanifest Datei die folgende Einstellung:

<Capabilities>
  <rescap:Capability Name="runFullTrust" />
</Capabilities>

Das Deklarieren dieser eingeschränkten Funktion bietet vollzugriff auf das Dateisystem, die Registrierung und andere eingeschränkte Funktionen. Weitere Informationen finden Sie unter Eingeschränkte Funktionsdeklarationen. Mit anderen Worten, die App hat den gleichen Zugriff auf das Dateisystem wie jede andere .NET-Desktop-App bei Verwendung der .NET-Datei-APIs.

Beispiele für die Verwendung der .NET-APIs in einer WinUI-App finden Sie unter Access-Dateien und -Ordner mit Windows App SDK und .NET-APIs.

Zusätzliche Ressourcen zum Arbeiten mit Dateien und Ordnern

Wenn Sie verpackte WinUI-Apps entwickeln, können die WinRT-Speicher-APIs ein leistungsstarkes Tool zum Lesen und Schreiben von Daten sein. Die folgenden UWP-Themen bieten eine Fülle von Informationen für Entwickler, die diese APIs in ihren Apps nutzen möchten.

Thema Description
Aufzählen und Abfragen von Dateien und Ordnern Greifen Sie auf Dateien und Ordner in einem Ordner, einer Bibliothek, einem Gerät oder einem Netzwerkspeicherort zu. Sie können die Dateien und Ordner auch an einem Speicherort abfragen, indem Sie Datei- und Ordnerabfragen erstellen.
Erstellen, Schreiben und Lesen einer Datei Lesen und Schreiben einer Datei mithilfe eines StorageFile-Objekts .
Bewährte Methoden zum Schreiben in Dateien Lernen Sie bewährte Methoden für die Verwendung verschiedener Dateischreibmethoden der FileIO - und PathIO-Klassen kennen.
Abrufen von Dateieigenschaften Dient zum Abrufen von Eigenschaften (oberster Ebene, Basis und Erweitert) für eine Datei, die durch ein StorageFile-Objekt dargestellt wird.
Zugreifen auf Heimnetzgruppeninhalte Greifen Sie auf Inhalte zu, die im Heimnetzgruppenordner des Benutzers gespeichert sind, einschließlich Bildern, Musik und Videos.
Ermitteln der Verfügbarkeit von Microsoft OneDrive-Dateien Ermitteln Sie, ob eine Microsoft OneDrive-Datei mit der StorageFile.IsAvailable-Eigenschaft verfügbar ist.
Dateien und Ordner in den Bibliotheken "Musik", "Bilder" und "Videos" Fügen Sie den entsprechenden Bibliotheken vorhandene Ordner mit Musik, Bildern oder Videos hinzu. Sie können Ordner auch aus Bibliotheken entfernen, die Liste der Ordner in einer Bibliothek abrufen und gespeicherte Fotos, Musik und Videos entdecken.
Nachverfolgen zuletzt verwendeter Dateien und Ordner Verfolgen Sie Dateien, auf die Ihr Benutzer häufig zugreift, indem Sie sie der Liste der zuletzt verwendeten Dateien Ihrer App (MRU) hinzufügen. Die Plattform verwaltet die MRU für Sie, indem Sie Elemente basierend auf dem Zeitpunkt des letzten Zugriffs sortieren und das älteste Element entfernen, wenn der Grenzwert für 25 Elemente der Liste erreicht ist. Alle Apps verfügen über eigene MRU.
Nachverfolgen von Dateisystemänderungen im Hintergrund Nachverfolgen von Änderungen am Dateisystem, auch wenn die App nicht ausgeführt wird.
Zugreifen auf die SD-Karte Sie können nicht wesentliche Daten auf einer optionalen MicroSD-Karte speichern und darauf zugreifen, insbesondere auf kostengünstigen mobilen Geräten mit eingeschränktem internen Speicher.
Schneller Zugriff auf Dateieigenschaften Sammeln Sie effizient eine Liste von Dateien und deren Eigenschaften aus einer Bibliothek, die über die Windows-Runtime-APIs verwendet werden sollen.

Siehe auch

Zugreifen auf Dateien und Ordner mit Windows App SDK und WinRT-APIs

Zugreifen auf Dateien und Ordner mit Windows App SDK und .NET-APIs

System.IO