File.OpenWrite(String) Methode

Definition

Öffnet eine vorhandene Datei oder erstellt eine neue Datei zum Schreiben.

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

Parameter

path
String

Die Datei, die zum Schreiben geöffnet werden soll.

Gibt zurück

Ein nicht freigegebenes FileStream Objekt auf dem angegebenen Pfad mit Write Zugriff.

Ausnahmen

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.

-oder-

path eine schreibgeschützte Datei oder ein schreibgeschütztes Verzeichnis angegeben.

.NET Framework- und .NET Core-Versionen, die älter als 2.1 sind: path eine leere Zeichenfolge, enthält nur Leerzeichen oder enthält mindestens ein ungültiges Zeichen. Sie können ungültige Zeichen mithilfe der GetInvalidPathChars() Methode abfragen.

path ist null.

Der angegebene Pfad, der Dateiname oder beide überschreiten die vom System definierte maximale Länge.

Der angegebene Pfad ist ungültig (z. B. auf einem nicht zugeordneten Laufwerk).

path ist in einem ungültigen Format vorhanden.

Beispiele

Im folgenden Beispiel wird eine Datei zum Lesen und Schreiben geöffnet.

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

Hinweise

Diese Methode entspricht der FileStream(String, FileMode, FileAccess, FileShare) Konstruktorüberladung mit festgelegtem OpenOrCreateDateimodus, dem Zugriffssatz Writeund dem Freigabemodus auf None.

Die OpenWrite Methode öffnet eine Datei, wenn eine datei bereits für den Dateipfad vorhanden ist, oder erstellt eine neue Datei, wenn sie nicht vorhanden ist. Bei einer vorhandenen Datei wird der neue Text nicht an den vorhandenen Text angefügt. Stattdessen werden die vorhandenen Zeichen mit den neuen Zeichen überschrieben. Wenn Sie eine längere Zeichenfolge (z. B. "This is a test of the OpenWrite method") mit einer kürzeren Zeichenfolge (z. B. "Second run") überschreiben, enthält die Datei eine Mischung aus den Zeichenfolgen ("Second runtest of the OpenWrite method").

Der path Parameter kann relative oder absolute Pfadinformationen angeben. Relative Pfadinformationen werden relativ zum aktuellen Arbeitsverzeichnis interpretiert. Verwenden Sie die GetCurrentDirectory Methode, um das aktuelle Arbeitsverzeichnis abzurufen.

Die zurückgegebene FileStream Funktion unterstützt das Lesen nicht. Verwenden Sie die Verwendung Open, um eine Datei zum Lesen und Schreiben zu öffnen.

Eine Liste allgemeiner E/A-Aufgaben finden Sie unter "Allgemeine E/A-Aufgaben".

Gilt für:

Weitere Informationen