Condividi tramite


StorageFolder.DeleteAsync Metodo

Definizione

Overload

DeleteAsync()

Elimina la cartella corrente.

DeleteAsync(StorageDeleteOption)

Elimina la cartella corrente. Questo metodo specifica anche se eliminare definitivamente la cartella.

DeleteAsync()

Elimina la cartella corrente.

public:
 virtual IAsyncAction ^ DeleteAsync() = DeleteAsync;
/// [Windows.Foundation.Metadata.Overload("DeleteAsyncOverloadDefaultOptions")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncAction DeleteAsync();
[Windows.Foundation.Metadata.Overload("DeleteAsyncOverloadDefaultOptions")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncAction DeleteAsync();
function deleteAsync()
Public Function DeleteAsync () As IAsyncAction

Restituisce

Al termine di questo metodo non viene restituito alcun oggetto o valore.

Implementazioni

Attributi

Eccezioni

Non si dispone dell'autorizzazione per eliminare la cartella specificata.

Esempio

Nell'esempio seguente viene illustrato come eliminare la cartella corrente chiamando il metodo di overload DeleteAsync(StorageDeleteOption). In questo esempio viene specificato in modo esplicito un valore per l'opzione che elimina il file in modo permanente.

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

// Get the app's local folder.
StorageFolder localFolder = Windows.Storage.ApplicationData.Current.LocalFolder;

// Create a temporary folder in the current folder.
string folderName = "Test";
StorageFolder testFolder = await localFolder.CreateFolderAsync(folderName);

// Has the folder been created?
if(await localFolder.TryGetItemAsync(folderName) != null)
    Debug.WriteLine("Folder " + folderName + " exists.");
else
    Debug.WriteLine("Folder " + folderName + " does not exist.");

// Delete the folder permanently.
await testFolder.DeleteAsync(StorageDeleteOption.PermanentDelete);

// Has the folder been deleted?
if(await localFolder.TryGetItemAsync(folderName) != null)
    Debug.WriteLine("Folder " + folderName + " exists.");
else
    Debug.WriteLine("Folder " + folderName + " does not exist.");
IAsyncAction MainPage::ExampleCoroutineAsync()
{
    Windows::Storage::StorageFolder localFolder{ Windows::Storage::ApplicationData::Current().LocalFolder() };

    std::wstring folderName{ L"test" };

    Windows::Storage::StorageFolder newFolder{ co_await localFolder.CreateFolderAsync(folderName) };

    {
        // Check that the folder exists.
        Windows::Storage::IStorageItem newItem{ co_await localFolder.TryGetItemAsync(folderName) };
        std::wstringstream stringstream;
        stringstream << L"Folder: " << folderName.c_str();
        if (newItem)
        {
            stringstream << L" created" << std::endl;
        }
        else
        {
            stringstream << L" not found" << std::endl;
        }
        ::OutputDebugString(stringstream.str().c_str());
    }

    co_await newFolder.DeleteAsync(Windows::Storage::StorageDeleteOption::PermanentDelete);

    {
        // Check that the folder has been deleted.
        Windows::Storage::IStorageItem newItem{ co_await localFolder.TryGetItemAsync(folderName) };
        std::wstringstream stringstream;
        stringstream << L"Folder: " << folderName.c_str();
        if (newItem)
        {
            stringstream << L" not deleted" << std::endl;
        }
        else
        {
            stringstream << L" deleted" << std::endl;
        }
        ::OutputDebugString(stringstream.str().c_str());
    }
}
StorageFolder^ localFolder = ApplicationData::Current->LocalFolder;

String^ folderName = "test";

create_task(localFolder->CreateFolderAsync(folderName)).then([=](StorageFolder^ newFolder) -> task<IStorageItem^> {
    //Check the folder exists
    return create_task(localFolder->TryGetItemAsync(folderName));
}).then([=](IStorageItem^ newFolder) -> task<void> {
    String^ output = "";
    if (newFolder == nullptr)
    {
        output = "Folder: " + folderName + " not found\n";
    }
    else
    {
        output = "Folder: " + folderName + " created\n";
    }
    OutputDebugString(output->Begin());
    return create_task(newFolder->DeleteAsync(StorageDeleteOption::PermanentDelete));
}).then([=]() -> task<IStorageItem^> {
    return create_task(localFolder->TryGetItemAsync(folderName));
}).then([=](IStorageItem^ newFolder) {
    String^ output = "";
    if (newFolder == nullptr)
    {
        output = "Folder: " + folderName + " deleted\n";
    }
    else
    {
        output = "Folder: " + folderName + " not deleted\n";
    }
    OutputDebugString(output->Begin());
});

Commenti

Questo metodo usa in modo implicito StorageDeleteOption.Default per determinare se l'elemento viene eliminato definitivamente.

Vedi anche

Si applica a

DeleteAsync(StorageDeleteOption)

Elimina la cartella corrente. Questo metodo specifica anche se eliminare definitivamente la cartella.

public:
 virtual IAsyncAction ^ DeleteAsync(StorageDeleteOption option) = DeleteAsync;
/// [Windows.Foundation.Metadata.Overload("DeleteAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncAction DeleteAsync(StorageDeleteOption const& option);
[Windows.Foundation.Metadata.Overload("DeleteAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncAction DeleteAsync(StorageDeleteOption option);
function deleteAsync(option)
Public Function DeleteAsync (option As StorageDeleteOption) As IAsyncAction

Parametri

option
StorageDeleteOption

Uno dei valori di enumerazione che specifica se eliminare definitivamente la cartella.

Restituisce

Al termine di questo metodo non viene restituito alcun oggetto o valore.

Implementazioni

Attributi

Eccezioni

Non si dispone dell'autorizzazione per eliminare la cartella specificata.

Vedi anche

Si applica a