StorageFolder.DeleteAsync 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
DeleteAsync() |
删除当前文件夹。 |
DeleteAsync(StorageDeleteOption) |
删除当前文件夹。 此方法还指定是否永久删除文件夹。 |
DeleteAsync()
删除当前文件夹。
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
返回
此方法完成后,不会返回任何对象或值。
实现
- 属性
例外
您没有删除指定文件夹的权限。
示例
以下示例演示如何通过调用 DeleteAsync (StorageDeleteOption) 重载方法删除当前文件夹。 此示例显式指定永久删除文件 的选项 的值。
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());
});
注解
此方法隐式使用 StorageDeleteOption.Default 来确定该项是否永久删除。
另请参阅
适用于
DeleteAsync(StorageDeleteOption)
删除当前文件夹。 此方法还指定是否永久删除文件夹。
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
参数
- option
- StorageDeleteOption
指定是否永久删除文件夹的枚举值之一。
返回
此方法完成后,不会返回任何对象或值。
实现
- 属性
例外
您没有删除指定文件夹的权限。