FileInfo.OpenWrite Método

Definição

Cria um .FileStream

public:
 System::IO::FileStream ^ OpenWrite();
public System.IO.FileStream OpenWrite();
member this.OpenWrite : unit -> System.IO.FileStream
Public Function OpenWrite () As FileStream

Devoluções

Um objeto não partilhado FileStream apenas de escrita para um ficheiro novo ou existente.

Exceções

O caminho especificado ao criar uma instância do FileInfo objeto é apenas leitura ou é um diretório.

O caminho especificado ao criar uma instância do FileInfo objeto é inválido, como se estivesse num disco não mapeado.

Exemplos

O exemplo seguinte abre um ficheiro para escrita e depois lê a partir desse ficheiro.

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

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

        // Open the stream for writing.
        using (FileStream fs = fi.OpenWrite())
        {
            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 = fi.OpenRead())
        {
            byte[] b = new byte[1024];
            UTF8Encoding temp = new UTF8Encoding(true);

            while (fs.Read(b,0,b.Length) > 0)
            {
                Console.WriteLine(temp.GetString(b));
            }
        }
    }
}
//This code produces output similar to the following;
//This is to test the OpenWrite method.
Imports System.IO
Imports System.Text

Public Class Test
    Public Shared Sub Main()
        Dim path As String = "c:\Temp\MyTest.txt"
        Dim fi As FileInfo = New FileInfo(path)
        Dim fs As FileStream

        ' Open the stream for writing.
        fs = fi.OpenWrite()
        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)
        fs.Close()

        'Open the stream and read it back.
        fs = fi.OpenRead()
        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
        fs.Close()
    End Sub
End Class
'This code produces output similar to the following; 
'results may vary based on the computer/file structure/etc.:
'
'This is to test the OpenWrite method.
'
'
'
'
'
'
'
'
'
'
'
'

Observações

O OpenWrite método abre um ficheiro se já existir um para o caminho do ficheiro, ou cria um novo ficheiro se não existir. Para um ficheiro existente, não acrescenta o novo texto ao texto existente. Em vez disso, sobrescrive as personagens existentes pelas novas. Se sobrescrever uma cadeia mais longa (como "Isto é um teste do método OpenWrite") por uma cadeia mais curta (como "Segunda execução"), o ficheiro conterá uma mistura das cadeias ("Teste da segunda execução do método OpenWrite.").

Aplica-se a