File.OpenWrite(String) Método

Definición

Abre un archivo existente o crea un nuevo archivo para escribirlo.

public:
 static System::IO::FileStream ^ OpenWrite(System::String ^ path);
public static System.IO.FileStream OpenWrite(string path);
static member OpenWrite : string -> System.IO.FileStream
Public Shared Function OpenWrite (path As String) As FileStream

Parámetros

path
String

Archivo que se va a abrir para escribir.

Devoluciones

Objeto no FileStream compartido en la ruta de acceso especificada con Write acceso.

Excepciones

El autor de la llamada no tiene el permiso necesario.

O bien

path especificó un archivo o directorio de solo lectura.

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, se encuentra en una unidad no asignada).

path tiene un formato no válido.

Ejemplos

En el ejemplo siguiente se abre un archivo para leer y escribir.

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

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

        // Open the stream and write to it.
        using (FileStream fs = File.OpenWrite(path))
        {
            Byte[] info =
                new UTF8Encoding(true).GetBytes("This is to test the OpenWrite method.");

            // Add some information to the file.
            fs.Write(info, 0, info.Length);
        }

        // Open the stream and read it back.
        using (FileStream fs = File.OpenRead(path))
        {
            byte[] b = new byte[1024];
            UTF8Encoding temp = new UTF8Encoding(true);

            while (fs.Read(b,0,b.Length) > 0)
            {
                Console.WriteLine(temp.GetString(b));
            }
        }
    }
}
open System.IO
open System.Text

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

// Open the stream and write to it.
do
    use fs = File.OpenWrite path

    let info =
        UTF8Encoding(true)
            .GetBytes "This is to test the OpenWrite method."

    // Add some information to the file.
    fs.Write(info, 0, info.Length)

// Open the stream and read it back.
do
    use fs = File.OpenRead path
    let b = Array.zeroCreate 1024
    let temp = UTF8Encoding true

    while fs.Read(b, 0, b.Length) > 0 do
        printfn $"{temp.GetString b}"
Imports System.IO
Imports System.Text

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

    ' Open the stream and write to it.
    Using fs As FileStream = File.OpenWrite(path)
      Dim info As Byte() = _
       New UTF8Encoding(True).GetBytes("This is to test the OpenWrite method.")

      ' Add some information to the file.
      fs.Write(info, 0, info.Length)
    End Using

    'Open the stream and read it back.
    Using fs As FileStream = File.OpenRead(path)
      Dim b(1023) As Byte
      Dim temp As UTF8Encoding = New UTF8Encoding(True)

      Do While fs.Read(b, 0, b.Length) > 0
        Console.WriteLine(temp.GetString(b))
      Loop
    End Using

  End Sub
End Class

Comentarios

Este método es equivalente a la sobrecarga del constructor con el FileStream(String, FileMode, FileAccess, FileShare) modo de archivo establecido OpenOrCreateen , el acceso establecido Writeen y el modo de recurso compartido establecido en None.

El OpenWrite método abre un archivo si ya existe uno para la ruta de acceso del archivo o crea un nuevo archivo si no existe. Para un archivo existente, no anexa el nuevo texto al texto existente. En su lugar, sobrescribe los caracteres existentes con los nuevos caracteres. Si sobrescribe una cadena más larga (por ejemplo, "Se trata de una prueba del método OpenWrite") con una cadena más corta (como "Segunda ejecución"), el archivo contendrá una combinación de las cadenas ("Second runtest of the OpenWrite method").

El path parámetro puede especificar información de ruta de acceso relativa o absoluta. La información de ruta de acceso relativa se interpreta como relativa al directorio de trabajo actual. Para obtener el directorio de trabajo actual, use el GetCurrentDirectory método .

El devuelto FileStream no admite la lectura. Para abrir un archivo para leer y escribir, use Open.

Para obtener una lista de tareas comunes de E/S, consulte Tareas comunes de E/S.

Se aplica a

Consulte también