Partage via


StorageFolder.GetFilesAsync Méthode

Définition

Surcharges

GetFilesAsync()

Obtient les fichiers dans le dossier actif.

GetFilesAsync(CommonFileQuery)

Obtient les fichiers dans le dossier actif. Obtient également les fichiers à partir des sous-dossiers du dossier actif lorsque la valeur de l’argument de requête est autre que CommonFileQuery.DefaultQuery. Les fichiers sont triés en fonction de la valeur spécifiée de l’énumération CommonFileQuery .

GetFilesAsync(CommonFileQuery, UInt32, UInt32)

Obtient une plage de fichiers basée sur un index à partir de la liste de tous les fichiers du dossier actif. Obtient également les fichiers à partir des sous-dossiers du dossier actif lorsque la valeur de l’argument de requête est autre que CommonFileQuery.DefaultQuery. Les fichiers sont triés en fonction de la valeur spécifiée de l’énumération CommonFileQuery .

GetFilesAsync()

Obtient les fichiers dans le dossier actif.

public:
 virtual IAsyncOperation<IVectorView<StorageFile ^> ^> ^ GetFilesAsync() = GetFilesAsync;
/// [Windows.Foundation.Metadata.Overload("GetFilesAsyncOverloadDefaultOptionsStartAndCount")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<IVectorView<StorageFile>> GetFilesAsync();
[Windows.Foundation.Metadata.Overload("GetFilesAsyncOverloadDefaultOptionsStartAndCount")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<IReadOnlyList<StorageFile>> GetFilesAsync();
function getFilesAsync()
Public Function GetFilesAsync () As IAsyncOperation(Of IReadOnlyList(Of StorageFile))

Retours

Une fois cette méthode terminée, elle retourne une liste des fichiers dans le dossier actif. La liste est de type IReadOnlyList<StorageFile>. Chaque fichier de la liste est représenté par un objet StorageFile .

Implémente

Attributs

Exceptions

Vous n’avez pas l’autorisation d’accéder au contenu du dossier actif. Pour plus d’informations, consultez Autorisations d’accès aux fichiers.

Exemples

L’exemple suivant montre comment obtenir le contenu du dossier Images de l’utilisateur et de ses sous-dossiers, triés par date, en appelant la méthode surchargée GetFilesAsync(CommonFileQuery, UInt32, UInt32). Cet exemple retourne un maximum de 20 fichiers, en commençant par le fichier à l’index 0. Étant donné que l’option CommonFileQuery.OrderByDate trie les dates dans l’ordre décroissant (c’est-à-dire, de la plus récente à la plus ancienne), cet exemple retourne les 20 photos les plus récentes de l’utilisateur.

Avant d’exécuter l’exemple suivant, activez la fonctionnalité Bibliothèque d’images dans le fichier manifeste de l’application.

using Windows.Storage;
using Windows.Storage.Search;
using System.Threading.Tasks;
using System.Diagnostics; // For writing results to Output window.

// Get the user's Pictures folder.
// Enable the corresponding capability in the app manifest file.
StorageFolder picturesFolder = KnownFolders.PicturesLibrary;

// Get the first 20 files in the current folder, sorted by date.
IReadOnlyList<StorageFile> sortedItems = await picturesFolder.GetFilesAsync(CommonFileQuery.OrderByDate,0,20);

// Iterate over the results and print the list of files
// to the Visual Studio Output window.
foreach (StorageFile file in sortedItems)
    Debug.WriteLine(file.Name + ", " + file.DateCreated);
#include <winrt/Windows.Storage.h>
#include <winrt/Windows.Storage.Search.h>
...
IAsyncAction ExampleCoroutineAsync()
{
    // Get the user's Pictures library.
    // Enable the Pictures Library capability in the app manifest file.
    Windows::Storage::StorageFolder picturesLibrary{ Windows::Storage::KnownFolders::PicturesLibrary() };

    // Get the first 20 sorted images in the library, sorted by date.
    Windows::Foundation::Collections::IVectorView<Windows::Storage::StorageFile> filesInFolder{
        co_await picturesLibrary.GetFilesAsync(Windows::Storage::Search::CommonFileQuery::OrderByDate, 0, 20) };

    // Iterate over the results, and print the list of files to the Visual Studio output window.
    for (Windows::Storage::StorageFile const& fileInFolder : filesInFolder)
    {
        std::wstring output{ fileInFolder.Name() + L' ' };
        ::OutputDebugString(output.c_str());
    }
    ::OutputDebugString(L"\n");
}
// Get user's pictures library
StorageFolder^ picturesLibrary = KnownFolders::PicturesLibrary;

// Get the first 20 sorted images in the library
create_task(picturesLibrary->GetFilesAsync(CommonFileQuery::OrderByDate,0,20)).then([=](IVectorView<StorageFile^>^ filesInFolder) {
 //Iterate over the results and print the list of files
 // to the visual studio output window
 for (auto it = filesInFolder->First(); it->HasCurrent; it->MoveNext())
 {
  StorageFile^ file = it->Current;
  String^ output = file->Name + "\n";
  OutputDebugString(output->Begin());
 }
});

Remarques

Cette requête est une requête superficielle qui retourne uniquement les fichiers dans le dossier actif. Pour obtenir la liste des méthodes qui identifient les requêtes superficielles et les requêtes approfondies, consultez remarques dans la rubrique GetFilesAsync.

Le tableau suivant répertorie les méthodes de la classe StorageFolder qui obtiennent une liste de fichiers. Le tableau identifie les requêtes superficielles qui retournent uniquement les fichiers du dossier actif, et les requêtes approfondies qui retournent des fichiers du dossier actif et de ses sous-dossiers.

Certaines méthodes prennent une valeur de l’énumération CommonFileQuery . Lorsque vous spécifiez l’option DefaultQuery à partir de l’énumération CommonFileQuery , la requête est une requête superficielle qui retourne uniquement les fichiers dans le dossier actif. Lorsque vous spécifiez une autre valeur à partir de l’énumération CommonFileQuery , la requête est une requête approfondie qui retourne une liste aplatie de fichiers du dossier actif et de ses sous-dossiers.

Conseil

Certaines des valeurs de l’énumération CommonFileQuery ne peuvent être utilisées qu’avec un dossier de bibliothèque (comme la bibliothèque Images) ou le dossier de groupe résidentiel. En plus de l’option DefaultQuery , vous pouvez utiliser uniquement les options OrderByName et OrderBySearchRank avec un dossier qui n’est pas un dossier de bibliothèque.

Pour obtenir des résultats de requête approfondie à partir d’un dossier qui n’est pas un dossier de bibliothèque, appelez la méthode CreateFileQueryWithOptions(QueryOptions) et spécifiez Deep comme valeur de la propriété FolderDepth de l’objet QueryOptions .

Méthode Créer une requête superficielle qui retourne uniquement les fichiers du dossier actif Créer une requête approfondie qui retourne des fichiers à partir du dossier actif et de ses sous-dossiers
GetFilesAsync() Comportement par défaut de cette méthode. N/A
GetFilesAsync(CommonFileQuery) Spécifiez l’option DefaultQuery . Pour un dossier de bibliothèque, spécifiez une option autre que DefaultQuery.
GetFilesAsync(CommonFileQuery, UInt32, UInt32) Spécifiez l’option DefaultQuery . Pour un dossier de bibliothèque, spécifiez une option autre que DefaultQuery.
CreateFileQuery() Comportement par défaut de cette méthode. N/A
CreateFileQuery(CommonFileQuery) Spécifiez l’option DefaultQuery . Pour un dossier de bibliothèque, spécifiez une option autre que DefaultQuery.
CreateFileQueryWithOptions(QueryOptions) Comportement par défaut de cette méthode si aucune des options suivantes n’est spécifiée.
- ou -
Spécifiez DefaultQuery comme valeur de CommonFileQuery lorsque vous instanciez l’objet QueryOptions .
- ou -
Spécifiez Shallow comme valeur de la propriété FolderDepth de l’objet QueryOptions .
Pour un dossier de bibliothèque, spécifiez une valeur autre que DefaultQuery comme valeur de CommonFileQuery lorsque vous instanciez l’objet QueryOptions .
- ou -
Pour n’importe quel dossier, spécifiez Deep comme valeur de la propriété FolderDepth de QueryOptions.

Voir aussi

S’applique à

GetFilesAsync(CommonFileQuery)

Obtient les fichiers dans le dossier actif. Obtient également les fichiers à partir des sous-dossiers du dossier actif lorsque la valeur de l’argument de requête est autre que CommonFileQuery.DefaultQuery. Les fichiers sont triés en fonction de la valeur spécifiée de l’énumération CommonFileQuery .

public:
 virtual IAsyncOperation<IVectorView<StorageFile ^> ^> ^ GetFilesAsync(CommonFileQuery query) = GetFilesAsync;
/// [Windows.Foundation.Metadata.Overload("GetFilesAsyncOverloadDefaultStartAndCount")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<IVectorView<StorageFile>> GetFilesAsync(CommonFileQuery const& query);
[Windows.Foundation.Metadata.Overload("GetFilesAsyncOverloadDefaultStartAndCount")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<IReadOnlyList<StorageFile>> GetFilesAsync(CommonFileQuery query);
function getFilesAsync(query)
Public Function GetFilesAsync (query As CommonFileQuery) As IAsyncOperation(Of IReadOnlyList(Of StorageFile))

Paramètres

query
CommonFileQuery

Une des valeurs d’énumération qui spécifie comment trier les fichiers et détermine si la requête est superficielle ou profonde.

Retours

Lorsque cette méthode se termine correctement, elle retourne une liste plate de fichiers, triés comme spécifié par requête. La liste est de type IReadOnlyList<StorageFile>. Chaque fichier de la liste est représenté par un objet StorageFile .

Implémente

Attributs

Exceptions

Vous n’avez pas l’autorisation d’accéder au contenu du dossier actif. Pour plus d’informations, consultez Autorisations d’accès aux fichiers.

Voir aussi

S’applique à

GetFilesAsync(CommonFileQuery, UInt32, UInt32)

Obtient une plage de fichiers basée sur un index à partir de la liste de tous les fichiers du dossier actif. Obtient également les fichiers à partir des sous-dossiers du dossier actif lorsque la valeur de l’argument de requête est autre que CommonFileQuery.DefaultQuery. Les fichiers sont triés en fonction de la valeur spécifiée de l’énumération CommonFileQuery .

public:
 virtual IAsyncOperation<IVectorView<StorageFile ^> ^> ^ GetFilesAsync(CommonFileQuery query, unsigned int startIndex, unsigned int maxItemsToRetrieve) = GetFilesAsync;
/// [Windows.Foundation.Metadata.Overload("GetFilesAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<IVectorView<StorageFile>> GetFilesAsync(CommonFileQuery const& query, uint32_t const& startIndex, uint32_t const& maxItemsToRetrieve);
[Windows.Foundation.Metadata.Overload("GetFilesAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<IReadOnlyList<StorageFile>> GetFilesAsync(CommonFileQuery query, uint startIndex, uint maxItemsToRetrieve);
function getFilesAsync(query, startIndex, maxItemsToRetrieve)
Public Function GetFilesAsync (query As CommonFileQuery, startIndex As UInteger, maxItemsToRetrieve As UInteger) As IAsyncOperation(Of IReadOnlyList(Of StorageFile))

Paramètres

query
CommonFileQuery

Une des valeurs d’énumération qui spécifie comment trier les fichiers et détermine si la requête est superficielle ou profonde.

startIndex
UInt32

unsigned int

uint32_t

Index de base zéro du premier fichier de la plage à récupérer.

maxItemsToRetrieve
UInt32

unsigned int

uint32_t

Nombre maximal de fichiers à récupérer.

Retours

Une fois cette méthode terminée, elle retourne une liste plate de fichiers triés comme spécifié par requête. La liste est de type IReadOnlyList<StorageFile>. Chaque fichier de la liste est représenté par un objet StorageFile .

Implémente

M:Windows.Storage.Search.IStorageFolderQueryOperations.GetFilesAsync(Windows.Storage.Search.CommonFileQuery,System.UInt32,System.UInt32) M:Windows.Storage.Search.IStorageFolderQueryOperations.GetFilesAsync(Windows.Storage.Search.CommonFileQuery,unsigned int,unsigned int) M:Windows.Storage.Search.IStorageFolderQueryOperations.GetFilesAsync(Windows.Storage.Search.CommonFileQuery,uint32_t,uint32_t)
Attributs

Exceptions

Vous n’avez pas l’autorisation d’accéder au contenu du dossier actif. Pour plus d’informations, consultez Autorisations d’accès aux fichiers.

Voir aussi

S’applique à