File.WriteAllText Método

Definición

Crea un nuevo archivo, escribe el contenido en el archivo y, a continuación, cierra el archivo. Si el archivo de destino ya existe, se trunca y se sobrescribe.

Sobrecargas

WriteAllText(String, ReadOnlySpan<Char>)

Crea un nuevo archivo, escribe la cadena especificada en el archivo y, a continuación, cierra el archivo.

Si el archivo de destino ya existe, se trunca y se sobrescribe.

WriteAllText(String, String)

Crea un nuevo archivo, escribe la cadena especificada en el archivo y, a continuación, cierra el archivo. Si el archivo de destino ya existe, se trunca y se sobrescribe.

WriteAllText(String, ReadOnlySpan<Char>, Encoding)

Crea un nuevo archivo, escribe la cadena especificada en el archivo mediante la codificación especificada y, a continuación, cierra el archivo.

Si el archivo de destino ya existe, se trunca y se sobrescribe.

WriteAllText(String, String, Encoding)

Crea un nuevo archivo, escribe la cadena especificada en el archivo mediante la codificación especificada y, a continuación, cierra el archivo. Si el archivo de destino ya existe, se trunca y se sobrescribe.

WriteAllText(String, ReadOnlySpan<Char>)

Crea un nuevo archivo, escribe la cadena especificada en el archivo y, a continuación, cierra el archivo.

Si el archivo de destino ya existe, se trunca y se sobrescribe.

public:
 static void WriteAllText(System::String ^ path, ReadOnlySpan<char> contents);
public static void WriteAllText (string path, ReadOnlySpan<char> contents);
static member WriteAllText : string * ReadOnlySpan<char> -> unit
Public Shared Sub WriteAllText (path As String, contents As ReadOnlySpan(Of Char))

Parámetros

path
String

Archivo en el que se va a escribir.

contents
ReadOnlySpan<Char>

Caracteres que se van a escribir en el archivo.

Excepciones

path es null.

path está vacío.

La ruta de acceso especificada, el nombre de archivo o ambos superan la longitud máxima definida por el sistema.

La ruta de acceso especificada no es válida (por ejemplo, está en una unidad no asignada).

Error de E/S al abrir el archivo.

path especificó un archivo que es de solo lectura.

-o-

path especificó un archivo oculto.

-o-

path especificó un directorio.

-o-

Esta operación no se admite en la plataforma actual.

El autor de la llamada no tiene el permiso necesario.

path tiene un formato no válido.

Comentarios

Este método usa codificación UTF-8 sin un Byte-Order Mark (BOM), por lo que el uso del método GetPreamble() devolverá una matriz de bytes vacía. Si es necesario incluir un identificador UTF-8, como una marca de orden de bytes, al principio de un archivo, use el método WriteAllText(String, ReadOnlySpan<Char>, Encoding).

Se aplica a

WriteAllText(String, String)

Source:
File.cs
Source:
File.cs
Source:
File.cs

Crea un nuevo archivo, escribe la cadena especificada en el archivo y, a continuación, cierra el archivo. Si el archivo de destino ya existe, se trunca y se sobrescribe.

public:
 static void WriteAllText(System::String ^ path, System::String ^ contents);
public static void WriteAllText (string path, string contents);
public static void WriteAllText (string path, string? contents);
static member WriteAllText : string * string -> unit
Public Shared Sub WriteAllText (path As String, contents As String)

Parámetros

path
String

Archivo en el que se va a escribir.

contents
String

Cadena que se va a escribir en el archivo.

Excepciones

Versiones de .NET Framework y .NET Core anteriores a la 2.1: path es una cadena de longitud cero, solo contiene espacios en blanco o contiene uno o varios caracteres no válidos. Puede consultar caracteres no válidos mediante el método GetInvalidPathChars().

path es null.

La ruta de acceso especificada, el nombre de archivo o ambos superan la longitud máxima definida por el sistema.

La ruta de acceso especificada no es válida (por ejemplo, está en una unidad no asignada).

Error de E/S al abrir el archivo.

path especificó un archivo que es de solo lectura.

-o-

path especificó un archivo oculto.

-o-

Esta operación no se admite en la plataforma actual.

-o-

path especificó un directorio.

-o-

El autor de la llamada no tiene el permiso necesario.

path tiene un formato no válido.

El autor de la llamada no tiene el permiso necesario.

Ejemplos

En el ejemplo de código siguiente se muestra el uso del método WriteAllText para escribir texto en un archivo. En este ejemplo se crea un archivo, si aún no existe y se agrega texto a él.

using System;
using System.IO;
using System.Text;

class Test
{
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        // This text is added only once to the file.
        if (!File.Exists(path))
        {
            // Create a file to write to.
            string createText = "Hello and Welcome" + Environment.NewLine;
            File.WriteAllText(path, createText);
        }

        // This text is always added, making the file longer over time
        // if it is not deleted.
        string appendText = "This is extra text" + Environment.NewLine;
        File.AppendAllText(path, appendText);

        // Open the file to read from.
        string readText = File.ReadAllText(path);
        Console.WriteLine(readText);
    }
}
open System
open System.IO

let path = @"c:\temp\MyTest.txt"

// This text is added only once to the file.
if File.Exists path |> not then
    // Create a file to write to.
    let createText =
        "Hello and Welcome" + Environment.NewLine

    File.WriteAllText(path, createText)

// This text is always added, making the file longer over time
// if it is not deleted.
let appendText =
    "This is extra text" + Environment.NewLine

File.AppendAllText(path, appendText)

// Open the file to read from.
let readText = File.ReadAllText path
printfn $"{readText}"
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"

        ' This text is added only once to the file.
        If File.Exists(path) = False Then

            ' Create a file to write to.
            Dim createText As String = "Hello and Welcome" + Environment.NewLine
            File.WriteAllText(path, createText)
        End If

        ' This text is always added, making the file longer over time
        ' if it is not deleted.
        Dim appendText As String = "This is extra text" + Environment.NewLine
        File.AppendAllText(path, appendText)

        ' Open the file to read from.
        Dim readText As String = File.ReadAllText(path)
        Console.WriteLine(readText)
    End Sub
End Class

Comentarios

Este método usa codificación UTF-8 sin un Byte-Order Mark (BOM), por lo que el uso del método GetPreamble devolverá una matriz de bytes vacía. Si es necesario incluir un identificador UTF-8, como una marca de orden de bytes, al principio de un archivo, use la sobrecarga del método WriteAllText(String, String, Encoding) con UTF8 codificación.

Dado una cadena y una ruta de acceso de archivo, este método abre el archivo especificado, escribe la cadena en el archivo y, a continuación, cierra el archivo.

Se aplica a

WriteAllText(String, ReadOnlySpan<Char>, Encoding)

Crea un nuevo archivo, escribe la cadena especificada en el archivo mediante la codificación especificada y, a continuación, cierra el archivo.

Si el archivo de destino ya existe, se trunca y se sobrescribe.

public:
 static void WriteAllText(System::String ^ path, ReadOnlySpan<char> contents, System::Text::Encoding ^ encoding);
public static void WriteAllText (string path, ReadOnlySpan<char> contents, System.Text.Encoding encoding);
static member WriteAllText : string * ReadOnlySpan<char> * System.Text.Encoding -> unit
Public Shared Sub WriteAllText (path As String, contents As ReadOnlySpan(Of Char), encoding As Encoding)

Parámetros

path
String

Archivo en el que se va a escribir.

contents
ReadOnlySpan<Char>

Caracteres que se van a escribir en el archivo.

encoding
Encoding

Codificación que se va a aplicar a la cadena.

Excepciones

path o encoding es null.

path está vacío.

La ruta de acceso especificada, el nombre de archivo o ambos superan la longitud máxima definida por el sistema.

La ruta de acceso especificada no es válida (por ejemplo, está en una unidad no asignada).

Error de E/S al abrir el archivo.

path especificó un archivo que es de solo lectura.

-o-

path especificó un archivo oculto.

-o-

path especificó un directorio.

-o-

El autor de la llamada no tiene el permiso necesario.

-o-

Esta operación no se admite en la plataforma actual.

path tiene un formato no válido.

Se aplica a

WriteAllText(String, String, Encoding)

Source:
File.cs
Source:
File.cs
Source:
File.cs

Crea un nuevo archivo, escribe la cadena especificada en el archivo mediante la codificación especificada y, a continuación, cierra el archivo. Si el archivo de destino ya existe, se trunca y se sobrescribe.

public:
 static void WriteAllText(System::String ^ path, System::String ^ contents, System::Text::Encoding ^ encoding);
public static void WriteAllText (string path, string contents, System.Text.Encoding encoding);
public static void WriteAllText (string path, string? contents, System.Text.Encoding encoding);
static member WriteAllText : string * string * System.Text.Encoding -> unit
Public Shared Sub WriteAllText (path As String, contents As String, encoding As Encoding)

Parámetros

path
String

Archivo en el que se va a escribir.

contents
String

Cadena que se va a escribir en el archivo.

encoding
Encoding

Codificación que se va a aplicar a la cadena.

Excepciones

Versiones de .NET Framework y .NET Core anteriores a la 2.1: path es una cadena de longitud cero, solo contiene espacios en blanco o contiene uno o varios caracteres no válidos. Puede consultar caracteres no válidos mediante el método GetInvalidPathChars().

path es null.

La ruta de acceso especificada, el nombre de archivo o ambos superan la longitud máxima definida por el sistema.

La ruta de acceso especificada no es válida (por ejemplo, está en una unidad no asignada).

Error de E/S al abrir el archivo.

path especificó un archivo que es de solo lectura.

-o-

path especificó un archivo oculto.

-o-

Esta operación no se admite en la plataforma actual.

-o-

path especificó un directorio.

-o-

El autor de la llamada no tiene el permiso necesario.

path tiene un formato no válido.

El autor de la llamada no tiene el permiso necesario.

Ejemplos

En el ejemplo de código siguiente se muestra el uso del método WriteAllText para escribir texto en un archivo. En este ejemplo se crea un archivo, si aún no existe y se agrega texto a él.

using System;
using System.IO;
using System.Text;

class Test
{
    public static void Main()
    {
        string path = @"c:\temp\MyTest.txt";

        // This text is added only once to the file.
        if (!File.Exists(path))
        {
            // Create a file to write to.
            string createText = "Hello and Welcome" + Environment.NewLine;
            File.WriteAllText(path, createText, Encoding.UTF8);
        }

        // This text is always added, making the file longer over time
        // if it is not deleted.
        string appendText = "This is extra text" + Environment.NewLine;
        File.AppendAllText(path, appendText, Encoding.UTF8);

        // Open the file to read from.
        string readText = File.ReadAllText(path);
        Console.WriteLine(readText);
    }
}
open System
open System.IO
open System.Text

let path = @"c:\temp\MyTest.txt"

// This text is added only once to the file.
if File.Exists path |> not then
    // Create a file to write to.
    let createText =
        "Hello and Welcome" + Environment.NewLine

    File.WriteAllText(path, createText, Encoding.UTF8)

// This text is always added, making the file longer over time
// if it is not deleted.
let appendText =
    "This is extra text" + Environment.NewLine

File.AppendAllText(path, appendText, Encoding.UTF8)

// Open the file to read from.
let readText = File.ReadAllText path
printfn $"{readText}"
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\temp\MyTest.txt"
        Dim sw As StreamWriter

        ' This text is added only once to the file.
        If File.Exists(path) = False Then

            ' Create a file to write to.
            Dim createText As String = "Hello and Welcome" + Environment.NewLine
            File.WriteAllText(path, createText, Encoding.UTF8)
        End If

        ' This text is always added, making the file longer over time
        ' if it is not deleted.
        Dim appendText As String = "This is extra text" + Environment.NewLine
        File.AppendAllText(path, appendText, Encoding.UTF8)

        ' Open the file to read from.
        Dim readText As String = File.ReadAllText(path)
        Console.WriteLine(readText)
    End Sub
End Class

Comentarios

Dado una cadena y una ruta de acceso de archivo, este método abre el archivo especificado, escribe la cadena en el archivo mediante la codificación especificada y, a continuación, cierra el archivo. Este método garantiza que el identificador de archivo se cierre, aunque se produzcan excepciones.

Se aplica a