StorageFolder.CreateFileAsync Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
CreateFileAsync(String) |
Crea un nuevo archivo con el nombre especificado en la carpeta actual. |
CreateFileAsync(String, CreationCollisionOption) |
Crea un nuevo archivo en la carpeta actual. Este método también especifica qué hacer si ya existe un archivo con el mismo nombre en la carpeta actual. |
CreateFileAsync(String)
Crea un nuevo archivo con el nombre especificado en la carpeta actual.
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)
Parámetros
- desiredName
-
String
Platform::String
winrt::hstring
Nombre del nuevo archivo que se va a crear en la carpeta actual.
Devoluciones
Cuando se completa este método, devuelve un objeto StorageFile que representa el nuevo archivo.
Implementaciones
- Atributos
Excepciones
El nombre de archivo contiene caracteres no válidos o el formato del nombre de archivo es incorrecto. Compruebe el valor de desiredName.
No tiene permiso para crear un archivo en la carpeta actual.
Ejemplos
En el ejemplo siguiente se muestra cómo crear un nuevo archivo en la carpeta actual mediante una llamada al método sobrecargado CreateFileAsync (String, CreationCollisionOption). En este ejemplo se especifica explícitamente un valor para las opciones que hacen que se produzca un error en la operación si ya existe un archivo con el desiredName especificado en la carpeta actual.
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.
});
Comentarios
Este método usa el valor FailIfExists de la enumeración CreationCollisionOption de forma predeterminada. Es decir, este método genera una excepción si ya existe un archivo con el mismo nombre en la carpeta actual. Si desea controlar una colisión de nombres de archivo de otra manera, llame al método CreateFileAsync(String, CreationCollisionOption).
Si intenta crear un archivo en una carpeta virtual como una biblioteca o una carpeta que representa un contenedor para un grupo de archivos (por ejemplo, el valor devuelto de algunas sobrecargas del método GetFoldersAsync ), puede producirse un error en el método CreateFileAsync .
Consulte también
Se aplica a
CreateFileAsync(String, CreationCollisionOption)
Crea un nuevo archivo en la carpeta actual. Este método también especifica qué hacer si ya existe un archivo con el mismo nombre en la carpeta actual.
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)
Parámetros
- desiredName
-
String
Platform::String
winrt::hstring
Nombre del nuevo archivo que se va a crear en la carpeta actual.
- options
- CreationCollisionOption
Uno de los valores de enumeración que determina cómo controlar la colisión si ya existe un archivo con el desiredName especificado en la carpeta actual.
Devoluciones
Cuando se completa este método, devuelve un objeto StorageFile que representa el nuevo archivo.
Implementaciones
- Atributos
Excepciones
Especificó CreationCollisionOption.FailIfExists y ya existe un archivo con el desiredName especificado en la carpeta actual.
El formato del nombre de archivo es incorrecto. Compruebe el valor de desiredName.
No tiene permiso para crear un archivo en la carpeta actual.