StorageFolder.CreateFileAsync Metodo

Definizione

Overload

CreateFileAsync(String)

Crea un nuovo file con il nome specificato nella cartella corrente.

CreateFileAsync(String, CreationCollisionOption)

Crea un nuovo file nella cartella corrente. Questo metodo specifica anche cosa fare se nella cartella corrente esiste già un file con lo stesso nome.

CreateFileAsync(String)

Crea un nuovo file con il nome specificato nella cartella corrente.

public:
 virtual IAsyncOperation<StorageFile ^> ^ CreateFileAsync(Platform::String ^ desiredName) = CreateFileAsync;
/// [Windows.Foundation.Metadata.Overload("CreateFileAsyncOverloadDefaultOptions")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<StorageFile> CreateFileAsync(winrt::hstring const& desiredName);
[Windows.Foundation.Metadata.Overload("CreateFileAsyncOverloadDefaultOptions")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<StorageFile> CreateFileAsync(string desiredName);
function createFileAsync(desiredName)
Public Function CreateFileAsync (desiredName As String) As IAsyncOperation(Of StorageFile)

Parametri

desiredName
String

Platform::String

winrt::hstring

Nome del nuovo file da creare nella cartella corrente.

Restituisce

Al termine di questo metodo, restituisce un oggetto StorageFile che rappresenta il nuovo file.

Implementazioni

M:Windows.Storage.IStorageFolder.CreateFileAsync(System.String) M:Windows.Storage.IStorageFolder.CreateFileAsync(Platform::String) M:Windows.Storage.IStorageFolder.CreateFileAsync(winrt::hstring)
Attributi

Eccezioni

Il nome file contiene caratteri non validi o il formato del nome file non è corretto. Controllare il valore di desiredName.

Non si dispone dell'autorizzazione per creare un file nella cartella corrente.

Esempio

Nell'esempio seguente viene illustrato come creare un nuovo file nella cartella corrente chiamando il metodo di overload CreateFileAsync (String, CreationCollisionOption). In questo esempio viene specificato in modo esplicito un valore per le opzioni che causano l'esito negativo dell'operazione se nella cartella corrente esiste già un file con il valore desiredName specificato.

using Windows.Storage;
using System.Threading.Tasks;

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

// Create a new file in the current folder.
// Raise an exception if the file already exists.
string desiredName = "test.txt";
StorageFile newFile = await localFolder.CreateFileAsync(desiredName, CreationCollisionOption.FailIfExists);
IAsyncAction MainPage::ExampleCoroutineAsync()
{
    // Gets the app's local folder.
    Windows::Storage::StorageFolder localFolder{ Windows::Storage::ApplicationData::Current().LocalFolder() };

    // Create a new file in the current folder, and throw an exception if the file already exists.
    std::wstring desiredName{ L"test.txt" };
    StorageFile newFile{ co_await localFolder.CreateFileAsync(desiredName, Windows::Storage::CreationCollisionOption::FailIfExists) };
    // Do something with the new file.
}
//Gets the app's local folder
StorageFolder^ localFolder = ApplicationData::Current->LocalFolder;

//Create a new file in the current folder
// Raise an exception if the file already exists
String^ desiredName = "test.txt";
auto createFileTask = create_task(localFolder->CreateFileAsync(desiredName, Windows::Storage::CreationCollisionOption::FailIfExists));
createFileTask.then([](StorageFile^ newFile)
{
  //Do something with the new file.
 });

Commenti

Questo metodo usa il valore FailIfExists dell'enumerazione CreationCollisionOption per impostazione predefinita. Questo metodo genera quindi un'eccezione se nella cartella corrente esiste già un file con lo stesso nome. Se si vuole gestire un conflitto di nomi file in modo diverso, chiamare il metodo CreateFileAsync(String, CreationCollisionOption).

Se si tenta di creare un file in una cartella virtuale come una libreria o una cartella che rappresenta un contenitore per un gruppo di file ( ad esempio, il valore restituito da alcuni overload del metodo GetFoldersAsync ), il metodo CreateFileAsync potrebbe non riuscire.

Vedi anche

Si applica a

CreateFileAsync(String, CreationCollisionOption)

Crea un nuovo file nella cartella corrente. Questo metodo specifica anche cosa fare se nella cartella corrente esiste già un file con lo stesso nome.

public:
 virtual IAsyncOperation<StorageFile ^> ^ CreateFileAsync(Platform::String ^ desiredName, CreationCollisionOption options) = CreateFileAsync;
/// [Windows.Foundation.Metadata.Overload("CreateFileAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperation<StorageFile> CreateFileAsync(winrt::hstring const& desiredName, CreationCollisionOption const& options);
[Windows.Foundation.Metadata.Overload("CreateFileAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperation<StorageFile> CreateFileAsync(string desiredName, CreationCollisionOption options);
function createFileAsync(desiredName, options)
Public Function CreateFileAsync (desiredName As String, options As CreationCollisionOption) As IAsyncOperation(Of StorageFile)

Parametri

desiredName
String

Platform::String

winrt::hstring

Nome del nuovo file da creare nella cartella corrente.

options
CreationCollisionOption

Uno dei valori di enumerazione che determina come gestire la collisione se esiste già un file con il valore desiredName specificato nella cartella corrente.

Restituisce

Al termine di questo metodo, restituisce un oggetto StorageFile che rappresenta il nuovo file.

Implementazioni

M:Windows.Storage.IStorageFolder.CreateFileAsync(System.String,Windows.Storage.CreationCollisionOption) M:Windows.Storage.IStorageFolder.CreateFileAsync(Platform::String,Windows.Storage.CreationCollisionOption) M:Windows.Storage.IStorageFolder.CreateFileAsync(winrt::hstring,Windows.Storage.CreationCollisionOption)
Attributi

Eccezioni

È stato specificato CreationCollisionOption.FailIfExists e un file con il valore desiredName specificato esiste già nella cartella corrente.

Il formato del nome file non è corretto. Controllare il valore di desiredName.

Non si dispone dell'autorizzazione per creare un file nella cartella corrente.

Vedi anche

Si applica a