Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Windows App SDK offre potenti funzionalità di gestione dei file per le app in pacchetto. È possibile usare le API dei namespace Windows.Storage, Windows.Storage.Streams e Microsoft.Windows.Storage.Pickers per leggere e scrivere in modo efficiente vari formati di dati nei file, nonché gestire file e cartelle.
Esistono un'ampia gamma di API correlate a file, cartelle, librerie e impostazioni per le app desktop di Windows a partire da Windows 10. Queste funzionalità sono disponibili tramite una combinazione di API Windows App SDK, Windows Runtime (WinRT) e .NET fornite dalla Windows App SDK, Windows SDK e .NET SDK.
Usare i selettori di Windows App SDK per leggere e scrivere dati
Nelle Windows App SDK versione 1.8 e successive sono disponibili API di selezione. Gli argomenti seguenti forniscono informazioni sull'uso delle API di selezione per consentire agli utenti di aprire e salvare file e cartelle nell'app:
| Argomento | Description |
|---|---|
| Aprire file e cartelle con selezione in WinUI | Usa Windows App SDK selezione file e cartelle per consentire agli utenti di esplorare e selezionare file o cartelle nell'app WinUI. Le API di selezione offrono un'esperienza di Windows familiare che consente agli utenti di spostarsi tra il dispositivo e le posizioni di storage cloud. Informazioni su come consentire agli utenti di selezionare un file o una cartella da aprire usando le classi FileOpenPicker e FolderPicker. |
| Salvare un file utilizzando il selettore Windows App SDK in WinUI | Quando si creano app WinUI e altre app client di Windows, gli utenti spesso devono salvare file come documenti, immagini o altri contenuti in posizioni specifiche nel dispositivo. Il Windows App SDK fornisce la classe FileSavePicker per creare un'interfaccia coerente e intuitiva che consente agli utenti di scegliere dove salvare i file e cosa denominarli. |
Differenze principali tra i selettori di WinRT e quelli del Windows App SDK
Ecco alcune differenze principali rispetto a WinRT Windows.Storage.Pickers usato dalle app UWP.
- A differenza del
Windows. Storage. Pickers API che restituisceStorageFile eStorageFolder oggetti, questa nuova API restituisce percorsi basati su stringhe tramitePickFileResult ePickFolderResult classi. Ciò semplifica l'API ed evita complicazioni con funzionalità di storage in scenari con privilegi elevati. - Analogamente, la proprietà FileSavePicker.SuggestedSaveFile (che ha restituito un StorageFile) è stata sostituita. La funzionalità è ora coperta da due proprietà stringa: SuggestedFolder e SuggestedFileName. Questi consentono di suggerire la cartella e il nome del file per la finestra di dialogo di salvataggio.
- Tutti i nuovi selettore sono progettati specificamente per le app desktop e usano una proprietà WindowId per collegare la selezione alla finestra host, sostituendo il
WinRT.Interop.InitializeWithWindow.Initializemodello. - I nuovi strumenti di selezione consentono agli sviluppatori di usarli senza richiedere FileTypeFilter o FileTypeChoices da specificare. Anche se gli strumenti di selezione UWP generano eccezioni quando queste proprietà non sono impostate, per impostazione predefinita i nuovi strumenti di selezione mostrano tutti i file quando gli sviluppatori non configurano in modo esplicito queste proprietà.
- La posizione HomeGroup è stata esclusa dalla nuova PickerLocationId perché non è più supportata a partire da Windows 10.
- FolderPicker.FileTypeFilter è stato escluso perché non era funzionalmente appropriato per la selezione della cartella.
- Esclusione di metodi e proprietà già contrassegnati come deprecati o "Non usare". Ad esempio, PickSingleFileAndContinue, ContinuationData, ResumePickSingleFileAsync e così via.
- Esclusione di metodi e proprietà per la modalità multiutente, perché le nuove API sono attualmente progettate per scenari desktop in cui ogni utente ha una sessione interattiva e ogni sessione è completamente indipendente dalle altre sessioni del dispositivo. Questo è in contrasto con Xbox o altri dispositivi multiutente.
Accedi ai dati con le API di archiviazione WinRT
Le app in pacchetto hanno access a tutte le API di storage WinRT disponibili per le app UWP. Sia che tu stia eseguendo la migrazione di un'app UWP esistente o crei una nuova app, puoi usare queste API per leggere e scrivere dati. Per esempi di uso delle API di storage in un'app WinUI 3, vedi Access file e cartelle con API Windows App SDK e WinRT.
Usare le API dei file .NET per l'accesso ai dati
Oltre alle API WinRT, le app desktop in pacchetto possono usare le API .NET nello spazio dei nomi System.IO per leggere e scrivere dati. Quando viene creato un nuovo project WinUI, il relativo file Package.appxmanifest contiene l'impostazione seguente:
<Capabilities>
<rescap:Capability Name="runFullTrust" />
</Capabilities>
La dichiarazione di questa funzionalità con restrizioni fornisce access completi al file system, al Registro di sistema e ad altre funzionalità limitate. Per altre info, vedi Dichiarazioni di funzionalità con restrizioni. In altre parole, l'app ha lo stesso access nel file system di qualsiasi altra app desktop .NET quando si usano le API di file .NET.
Per esempi di uso delle API di .NET in un'app WinUI, vedi Access file e cartelle con API Windows App SDK e .NET.
Risorse aggiuntive per l'uso di file e cartelle
Se stai sviluppando app WinUI in pacchetto, le API di storage WinRT possono essere uno strumento potente per la lettura e la scrittura di dati. Gli argomenti UWP seguenti forniscono un'ampia gamma di informazioni per gli sviluppatori che cercano di sfruttare queste API nelle app.
| Argomento | Description |
|---|---|
| Enumerare e consultare file e cartelle | Accedi a file e cartelle in cartella, raccolta, dispositivo o percorso di rete. È anche possibile eseguire query su file e cartelle in un percorso utilizzando query personalizzate. |
| Creare, scrivere e leggere un file | Leggere e scrivere un file usando un oggetto StorageFile. |
| Procedure consigliate per la scrittura in file | Informazioni sulle procedure consigliate per l'uso di vari metodi di scrittura di file delle classi FileIO e PathIO. |
| Ottenere le proprietà del file | Ottenere proprietà, di primo livello, di base e estese, per un file rappresentato da un oggetto StorageFile. |
| Accesso al contenuto del gruppo Home | Accedi ai contenuti archiviati nella cartella HomeGroup dell'utente, comprese immagini, musica e video. |
| Determinare la disponibilità dei file di Microsoft OneDrive | Determinare se un file di Microsoft OneDrive è disponibile usando la proprietà StorageFile.IsAvailable. |
| File e cartelle nelle raccolte Musica, Immagini e Video | Aggiungere cartelle esistenti di musica, immagini o video alle librerie corrispondenti. È anche possibile rimuovere cartelle dalle raccolte, ottenere l'elenco di cartelle in una raccolta e individuare foto, musica e video archiviati. |
| Tenere traccia dei file e delle cartelle usati di recente | Tieni traccia dei file a cui l'utente accede frequentemente aggiungendoli all'elenco MRU dell'app. La piattaforma gestisce per te la lista MRU (Most Recently Used) ordinando automaticamente gli elementi in base al momento dell'ultimo accesso e rimuovendo l'elemento più vecchio quando viene raggiunto il limite massimo di 25 elementi. Tutte le app hanno il proprio MRU. |
| Tenere traccia delle modifiche apportate al file system in background | Tenere traccia delle modifiche apportate al file system, anche quando l'app non è in esecuzione. |
| Accedi alla scheda SD | È possibile archiviare e access dati non essenziali in una scheda microSD facoltativa, in particolare nei dispositivi mobili a basso costo con storage interni limitati. |
| Accesso rapido alle proprietà dei file | Raccogliere in modo efficiente un elenco di file e le relative proprietà da una libreria da usare tramite le API di Windows Runtime. |
Vedere anche
Accedi a file e cartelle con le API di Windows App SDK e WinRT
Accedi ai file e alle cartelle con le API di Windows App SDK e .NET