File.OpenWrite(String) File.OpenWrite(String) File.OpenWrite(String) File.OpenWrite(String) Method

Definition

Öffnet eine vorhandene Datei oder erstellt eine neue Datei zum Schreiben.Opens an existing file or creates a new file for writing.

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 String String String

Die Datei, die zum Schreiben geöffnet werden soll.The file to be opened for writing.

Gibt zurück

Ein nicht freigegebenes FileStream-Objekt am angegebenen Pfad mit Write-Zugriff.An unshared FileStream object on the specified path with Write access.

Ausnahmen

Der Aufrufer verfügt nicht über die erforderliche Berechtigung.The caller does not have the required permission.

- oder --or- path hat eine schreibgeschützte Datei oder ein Verzeichnis angegeben.path specified a read-only file or directory.

path ist eine leere Zeichenfolge, enthält nur Leerzeichen oder enthält mindestens ein ungültiges Zeichen gemäß der Definition von InvalidPathChars.path is a zero-length string, contains only white space, or contains one or more invalid characters as defined by InvalidPathChars.

Der angegebene Pfad und/oder Dateiname überschreiten die vom System definierte maximale Länge.The specified path, file name, or both exceed the system-defined maximum length.

Der angegebene Pfad ist ungültig (er befindet sich z. B. auf einem nicht zugeordneten Laufwerk).The specified path is invalid, (for example, it is on an unmapped drive).

path weist ein ungültiges Format auf.path is in an invalid format.

Beispiele

Im folgenden Beispiel wird eine Datei zum Lesen und Schreiben geöffnet.The following example opens a file for reading and writing.

using namespace System;
using namespace System::IO;
using namespace System::Text;

int main()
{
   String^ path = "c:\\temp\\MyTest.txt";

   // Open the stream and write to it.
   {
      FileStream^ fs = File::OpenWrite( path );
      try
      {
         array<Byte>^info = (gcnew UTF8Encoding( true ))->
            GetBytes( "This is to test the OpenWrite method." );

         // Add some information to the file.
         fs->Write( info, 0, info->Length );
      }
      finally
      {
         if ( fs )
            delete (IDisposable^)fs;
      }
   }

   // Open the stream and read it back.
   {
      FileStream^ fs = File::OpenRead( path );
      try
      {
         array<Byte>^b = gcnew array<Byte>(1024);
         UTF8Encoding^ temp = gcnew UTF8Encoding( true );
         while ( fs->Read( b, 0, b->Length ) > 0 )
         {
            Console::WriteLine( temp->GetString( b ) );
         }
      }
      finally
      {
         if ( fs )
            delete(IDisposable^)fs;
      }
   }
}
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));
            }
        }
    }
}
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(1024) 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

FileStream(String, FileMode, FileAccess, FileShare) Diese Methode entspricht der-Konstruktorüberladung, für die der Dateimodus auf OpenOrCreatefestgelegt ist Write, für den Zugriff auf festgelegt Noneist und der Freigabe Modus auf festgelegt ist.This method is equivalent to the FileStream(String, FileMode, FileAccess, FileShare) constructor overload with file mode set to OpenOrCreate, the access set to Write, and the share mode set to None.

Die OpenWrite -Methode öffnet eine Datei, wenn Sie für den Dateipfad bereits vorhanden ist, oder erstellt eine neue Datei, wenn Sie nicht vorhanden ist.The OpenWrite method opens a file if one already exists for the file path, or creates a new file if one does not exist. Bei einer vorhandenen Datei wird der neue Text nicht an den vorhandenen Text angefügt.For an existing file, it does not append the new text to the existing text. Stattdessen werden die vorhandenen Zeichen mit den neuen Zeichen überschrieben.Instead, it overwrites the existing characters with the new characters. Wenn Sie eine längere Zeichenfolge (z. b. "Dies ist ein Test der OpenWrite-Methode") mit einer kürzeren Zeichenfolge (z. b. "Second Run") überschreiben, enthält die Datei eine Mischung der Zeichen folgen ("zweiter runTest der OpenWrite-Methode").If you overwrite a longer string (such as "This is a test of the OpenWrite method") with a shorter string (such as "Second run"), the file will contain a mix of the strings ("Second runtest of the OpenWrite method").

Der path -Parameter kann relative oder absolute Pfadinformationen angeben.The path parameter may specify relative or absolute path information. Relative Pfadinformationen werden als relativ zum aktuellen Arbeitsverzeichnis interpretiert.Relative path information is interpreted as relative to the current working directory. Um das aktuelle Arbeitsverzeichnis abzurufen, verwenden Sie GetCurrentDirectory die-Methode.To obtain the current working directory, use the GetCurrentDirectory method.

Der zurück FileStream gegebene unterstützt keine Lesevorgänge.The returned FileStream does not support reading. Verwenden Sie zum Öffnen einer Datei zum Lesen und Schreiben von Open.To open a file for both reading and writing, use Open.

Eine Liste der allgemeinen e/a-Aufgaben finden Sie unter Allgemeine e/a-Aufgaben.For a list of common I/O tasks, see Common I/O Tasks.

Sicherheit

FileIOPermission
zum Schreiben in die angegebene Datei.for writing to the specified file. Zugehörige Enumeration:WriteAssociated enumeration: Write

Gilt für:

Siehe auch