File.Open Méthode

Définition

Ouvre FileStream sur le chemin d'accès spécifié.Opens a FileStream on the specified path.

Surcharges

Open(String, FileMode)

Ouvre un FileStream sur le chemin spécifié avec un accès en lecture/écriture sans partage.Opens a FileStream on the specified path with read/write access with no sharing.

Open(String, FileMode, FileAccess)

Ouvre un FileStream sur le chemin spécifié, avec le mode et l’accès spécifiés sans partage.Opens a FileStream on the specified path, with the specified mode and access with no sharing.

Open(String, FileMode, FileAccess, FileShare)

Ouvre un élément FileStream sur le chemin d’accès spécifié, dans le mode spécifié avec accès en lecture, en écriture ou en lecture/écriture, et l’option de partage spécifiée.Opens a FileStream on the specified path, having the specified mode with read, write, or read/write access and the specified sharing option.

Open(String, FileMode)

Ouvre un FileStream sur le chemin spécifié avec un accès en lecture/écriture sans partage.Opens a FileStream on the specified path with read/write access with no sharing.

public:
 static System::IO::FileStream ^ Open(System::String ^ path, System::IO::FileMode mode);
public static System.IO.FileStream Open (string path, System.IO.FileMode mode);
static member Open : string * System.IO.FileMode -> System.IO.FileStream
Public Shared Function Open (path As String, mode As FileMode) As FileStream

Paramètres

path
String

Fichier à ouvrir.The file to open.

mode
FileMode

Valeur FileMode qui spécifie si un fichier est créé s'il n'existe pas et détermine si le contenu des fichiers existants est conservé ou remplacé.A FileMode value that specifies whether a file is created if one does not exist, and determines whether the contents of existing files are retained or overwritten.

Retours

Élément FileStream ouvert dans le mode et le chemin d'accès spécifiés, avec un accès en lecture/écriture et non partagé.A FileStream opened in the specified mode and path, with read/write access and not shared.

Exceptions

path est une chaîne de longueur nulle, contient seulement un espace, ou contient un ou plusieurs caractères non valides définis par InvalidPathChars.path is a zero-length string, contains only white space, or contains one or more invalid characters as defined by InvalidPathChars.

path a la valeur null.path is null.

Le chemin et/ou le nom de fichier spécifiés dépassent la longueur maximale définie par le système.The specified path, file name, or both exceed the system-defined maximum length.

Le chemin spécifié n’est pas valide (par exemple, il est sur un lecteur non mappé).The specified path is invalid, (for example, it is on an unmapped drive).

Une erreur d’E/S s’est produite lors de l’ouverture du fichier.An I/O error occurred while opening the file.

path a spécifié un fichier en lecture seule.path specified a file that is read-only.

- ou --or- Cette opération n'est pas prise en charge sur la plateforme actuelle.This operation is not supported on the current platform.

- ou --or- path a spécifié un répertoire.path specified a directory.

- ou --or- L'appelant n'a pas l'autorisation requise.The caller does not have the required permission.

- ou --or- mode est Create et le fichier spécifié est un fichier masqué.mode is Create and the specified file is a hidden file.

mode a spécifié une valeur non valide.mode specified an invalid value.

Le fichier spécifié dans path est introuvable.The file specified in path was not found.

path a un format non valide.path is in an invalid format.

Exemples

L’exemple de code suivant crée un fichier temporaire et y écrit du texte.The following code example creates a temporary file and writes some text to it. L’exemple ouvre ensuite le fichier à l’aide de T :System.IO.FileMode.Open ; autrement dit, si le fichier n’existait pas encore, il n’est pas créé.The example then opens the file, using T:System.IO.FileMode.Open; that is, if the file did not already exist, it would not be created.

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

int main()
{
   // Create a temporary file, and put some data into it.
   String^ path = Path::GetTempFileName();
   FileStream^ fs = File::Open( path, FileMode::Open, FileAccess::Write, FileShare::None );
   try
   {
      array<Byte>^info = (gcnew UTF8Encoding( true ))->GetBytes( "This is some text in the file." );
      
      // 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.
   fs = File::Open( path, FileMode::Open );
   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() 
    {
        // Create a temporary file, and put some data into it.
        string path = Path.GetTempFileName();
        using (FileStream fs = File.Open(path, FileMode.Open, FileAccess.Write, FileShare.None)) 
        {
            Byte[] info = new UTF8Encoding(true).GetBytes("This is some text in the file.");
            // Add some information to the file.
            fs.Write(info, 0, info.Length);
        }
        

        // Open the stream and read it back.
        using (FileStream fs = File.Open(path, FileMode.Open)) 
        {
            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()
  
    ' Create a temporary file, and put some data into it. 
    Dim path1 As String = Path.GetTempFileName()
    Using fs As FileStream = File.Open(path1, FileMode.Open, FileAccess.Write, FileShare.None)
      Dim info As Byte() = New UTF8Encoding(True).GetBytes("This is some text in the file.")
      ' 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.Open(path1, FileMode.Open)
      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

Remarques

Le paramètre path est autorisé à spécifier des informations sur le chemin d’accès relatif ou absolu.The path parameter is permitted to specify relative or absolute path information. Les informations relatives au chemin d’accès relatif sont interprétées par rapport au répertoire de travail actuel.Relative path information is interpreted as relative to the current working directory. Pour obtenir le répertoire de travail actuel, consultez GetCurrentDirectory.To obtain the current working directory, see GetCurrentDirectory.

Pour obtenir la liste des tâches d’e/s courantes, consultez tâches d’e/s courantes.For a list of common I/O tasks, see Common I/O Tasks.

Sécurité

FileIOPermission
pour la lecture et l’écriture dans le fichier spécifié.for reading from and writing to the specified file. Énumérations associées : Read, WriteAssociated enumerations: Read, Write

Voir aussi

Open(String, FileMode, FileAccess)

Ouvre un FileStream sur le chemin spécifié, avec le mode et l’accès spécifiés sans partage.Opens a FileStream on the specified path, with the specified mode and access with no sharing.

public:
 static System::IO::FileStream ^ Open(System::String ^ path, System::IO::FileMode mode, System::IO::FileAccess access);
public static System.IO.FileStream Open (string path, System.IO.FileMode mode, System.IO.FileAccess access);
static member Open : string * System.IO.FileMode * System.IO.FileAccess -> System.IO.FileStream
Public Shared Function Open (path As String, mode As FileMode, access As FileAccess) As FileStream

Paramètres

path
String

Fichier à ouvrir.The file to open.

mode
FileMode

Valeur FileMode qui spécifie si un fichier est créé s'il n'existe pas et détermine si le contenu des fichiers existants est conservé ou remplacé.A FileMode value that specifies whether a file is created if one does not exist, and determines whether the contents of existing files are retained or overwritten.

access
FileAccess

Valeur de FileAccess spécifiant les opérations qui peuvent être effectuées sur le fichier.A FileAccess value that specifies the operations that can be performed on the file.

Retours

Élément FileStream non partagé qui fournit l'accès au fichier spécifié avec le mode et l'accès spécifiés.An unshared FileStream that provides access to the specified file, with the specified mode and access.

Exceptions

path est une chaîne de longueur nulle, contient seulement un espace, ou contient un ou plusieurs caractères non valides définis par InvalidPathChars.path is a zero-length string, contains only white space, or contains one or more invalid characters as defined by InvalidPathChars.

- ou --or- access a spécifié Read et mode a spécifié Create, CreateNew, Truncateou Append.access specified Read and mode specified Create, CreateNew, Truncate, or Append.

path a la valeur null.path is null.

Le chemin et/ou le nom de fichier spécifiés dépassent la longueur maximale définie par le système.The specified path, file name, or both exceed the system-defined maximum length.

Le chemin spécifié n’est pas valide (par exemple, il est sur un lecteur non mappé).The specified path is invalid, (for example, it is on an unmapped drive).

Une erreur d’E/S s’est produite lors de l’ouverture du fichier.An I/O error occurred while opening the file.

path a spécifié un fichier qui est en lecture seule et access n’est pas Read.path specified a file that is read-only and access is not Read.

- ou --or- path a spécifié un répertoire.path specified a directory.

- ou --or- L'appelant n'a pas l'autorisation requise.The caller does not have the required permission.

- ou --or- mode est Create et le fichier spécifié est un fichier masqué.mode is Create and the specified file is a hidden file.

mode ou access a spécifié une valeur non valide.mode or access specified an invalid value.

Le fichier spécifié dans path est introuvable.The file specified in path was not found.

path a un format non valide.path is in an invalid format.

Exemples

L’exemple suivant ouvre un fichier avec un accès en lecture seule.The following example opens a file with read-only access.


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

int main()
{
    // This sample assumes that you have a folder named "c:\temp" on your computer.
    String^ filePath = "c:\\temp\\MyTest.txt";
    // Delete the file if it exists.
    if (File::Exists( filePath ))
    {
        File::Delete( filePath );
    }
    // Create the file.
    FileStream^ fs = File::Create( filePath );
    try
    {
        array<Byte>^ info = ( gcnew UTF8Encoding( true ))->GetBytes( "This is some text in the file." );
        
        // 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.
    fs = File::Open( filePath, FileMode::Open, FileAccess::Read );
    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 ) );
        }
        try
        {
            // Try to write to the file.
            fs->Write( b, 0, b->Length );
        }
        catch ( Exception^ e ) 
        {
            Console::WriteLine( "Writing was disallowed, as expected: {0}", e->ToString() );
        }
    }
    finally
    {
        if ( fs )
            delete (IDisposable^)fs;
    }
}
using System;
using System.IO;
using System.Text;

class Test 
{
    public static void Main() 
    {
        // This sample assumes that you have a folder named "c:\temp" on your computer.
        string filePath = @"c:\temp\MyTest.txt";

        // Delete the file if it exists.
        if (File.Exists(filePath)) 
        {
            File.Delete(filePath);
        }
        
        // Create the file.
        using (FileStream fs = File.Create(filePath)) 
        {
            Byte[] info = new UTF8Encoding(true).GetBytes("This is some text in the file.");
            // Add some information to the file.
            fs.Write(info, 0, info.Length);
        }

        // Open the stream and read it back.
        using (FileStream fs = File.Open(filePath, FileMode.Open, FileAccess.Read)) 
        {
            byte[] b = new byte[1024];
            UTF8Encoding temp = new UTF8Encoding(true);

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

            try 
            {
                // Try to write to the file.
                fs.Write(b,0,b.Length);
            } 
            catch (Exception e) 
            {
                Console.WriteLine("Writing was disallowed, as expected: {0}", e.ToString());
            }
        }
    }
}
Imports System.IO
Imports System.Text

Public Class Test
  Public Shared Sub Main()
    ' This sample assumes that you have a folder named "c:\temp" on your computer. 
    Dim filePath As String = "c:\temp\MyTest.txt"

    ' Delete the file if it exists. 
    If File.Exists(filePath) Then
      File.Delete(filePath)
    End If

    ' Create the file.
    Using fs As FileStream = File.Create(filePath)
      Dim info As Byte() = New UTF8Encoding(True).GetBytes("This is some text in the file.")

      ' 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.Open(filePath, FileMode.Open, FileAccess.Read)
      Dim b(1023) As Byte
      Dim temp As UTF8Encoding = New UTF8Encoding(True)

      ' Display the information on the console. 
      Do While fs.Read(b, 0, b.Length) > 0
        Console.WriteLine(temp.GetString(b))
      Loop

      Try
        ' Try to write to the file
        fs.Write(b, 0, b.Length)
      Catch e As Exception
        Console.WriteLine("Writing was disallowed, as expected: " & e.ToString())
      End Try

    End Using

  End Sub
End Class

Remarques

Le paramètre path est autorisé à spécifier des informations sur le chemin d’accès relatif ou absolu.The path parameter is permitted to specify relative or absolute path information. Les informations relatives au chemin d’accès relatif sont interprétées par rapport au répertoire de travail actuel.Relative path information is interpreted as relative to the current working directory. Pour obtenir le répertoire de travail actuel, consultez GetCurrentDirectory.To obtain the current working directory, see GetCurrentDirectory.

Sécurité

FileIOPermission
pour la lecture et l’écriture dans le fichier spécifié.for reading from and writing to the specified file. Énumérations associées : Read, WriteAssociated enumerations: Read, Write

Voir aussi

Open(String, FileMode, FileAccess, FileShare)

Ouvre un élément FileStream sur le chemin d’accès spécifié, dans le mode spécifié avec accès en lecture, en écriture ou en lecture/écriture, et l’option de partage spécifiée.Opens a FileStream on the specified path, having the specified mode with read, write, or read/write access and the specified sharing option.

public:
 static System::IO::FileStream ^ Open(System::String ^ path, System::IO::FileMode mode, System::IO::FileAccess access, System::IO::FileShare share);
public static System.IO.FileStream Open (string path, System.IO.FileMode mode, System.IO.FileAccess access, System.IO.FileShare share);
static member Open : string * System.IO.FileMode * System.IO.FileAccess * System.IO.FileShare -> System.IO.FileStream
Public Shared Function Open (path As String, mode As FileMode, access As FileAccess, share As FileShare) As FileStream

Paramètres

path
String

Fichier à ouvrir.The file to open.

mode
FileMode

Valeur FileMode qui spécifie si un fichier est créé s'il n'existe pas et détermine si le contenu des fichiers existants est conservé ou remplacé.A FileMode value that specifies whether a file is created if one does not exist, and determines whether the contents of existing files are retained or overwritten.

access
FileAccess

Valeur de FileAccess spécifiant les opérations qui peuvent être effectuées sur le fichier.A FileAccess value that specifies the operations that can be performed on the file.

share
FileShare

Valeur de FileShare spécifiant le type d'accès que les autres threads ont sur le fichier.A FileShare value specifying the type of access other threads have to the file.

Retours

Ouvre un élément FileStream sur le chemin d'accès spécifié, dans le mode spécifié avec accès en lecture, en écriture ou en lecture/écriture, et l'option de partage spécifiée.A FileStream on the specified path, having the specified mode with read, write, or read/write access and the specified sharing option.

Exceptions

path est une chaîne de longueur nulle, contient seulement un espace, ou contient un ou plusieurs caractères non valides définis par InvalidPathChars.path is a zero-length string, contains only white space, or contains one or more invalid characters as defined by InvalidPathChars.

- ou --or- access a spécifié Read et mode a spécifié Create, CreateNew, Truncateou Append.access specified Read and mode specified Create, CreateNew, Truncate, or Append.

path a la valeur null.path is null.

Le chemin et/ou le nom de fichier spécifiés dépassent la longueur maximale définie par le système.The specified path, file name, or both exceed the system-defined maximum length.

Le chemin spécifié n’est pas valide (par exemple, il est sur un lecteur non mappé).The specified path is invalid, (for example, it is on an unmapped drive).

Une erreur d’E/S s’est produite lors de l’ouverture du fichier.An I/O error occurred while opening the file.

path a spécifié un fichier qui est en lecture seule et access n’est pas Read.path specified a file that is read-only and access is not Read.

- ou --or- path a spécifié un répertoire.path specified a directory.

- ou --or- L'appelant n'a pas l'autorisation requise.The caller does not have the required permission.

- ou --or- mode est Create et le fichier spécifié est un fichier masqué.mode is Create and the specified file is a hidden file.

mode, access ou share a spécifié une valeur non valide.mode, access, or share specified an invalid value.

Le fichier spécifié dans path est introuvable.The file specified in path was not found.

path a un format non valide.path is in an invalid format.

Exemples

L’exemple suivant ouvre un fichier avec un accès en lecture seule et le partage de fichiers n’est pas autorisé.The following example opens a file with read-only access and with file sharing disallowed.

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

int main()
{
   String^ path = "c:\\temp\\MyTest.txt";
   
   // Create the file if it does not exist.
   if (  !File::Exists( path ) )
   {
      // Create the file.
      FileStream^ fs = File::Create( path );
      try
      {
         array<Byte>^info = (gcnew UTF8Encoding( true ))->GetBytes( "This is some text in the file." );
         
         // 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::Open( path, FileMode::Open, FileAccess::Read, FileShare::None );
   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 ) );
      }
      try
      {
         // Try to get another handle to the same file.
         FileStream^ fs2 = File::Open( path, FileMode::Open );
         try
         {
            // Do some task here.
         }
         finally
         {
            if ( fs2 )
                        delete (IDisposable^)fs2;
         }
      }
      catch ( Exception^ e ) 
      {
         Console::Write( "Opening the file twice is disallowed." );
         Console::WriteLine( ", as expected: {0}", e );
      }
   }
   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";

        // Create the file if it does not exist.
        if (!File.Exists(path)) 
        {
            // Create the file.
            using (FileStream fs = File.Create(path)) 
            {
                Byte[] info = new UTF8Encoding(true).GetBytes("This is some text in the file.");

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

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

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

            try 
            {
                // Try to get another handle to the same file.
                using (FileStream fs2 = File.Open(path, FileMode.Open)) 
                {
                    // Do some task here.
                }
            } 
            catch (Exception e) 
            {
                Console.Write("Opening the file twice is disallowed.");
                Console.WriteLine(", as expected: {0}", e.ToString());
            }
        }
    }
}
Imports System.IO
Imports System.Text

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

    ' Create the file if it does not exist. 
    If Not File.Exists(path) Then
      ' Create the file.
      Using fs As FileStream = File.Create(path)
        Dim info As Byte() = New UTF8Encoding(True).GetBytes("This is some text in the file.")

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

    ' Open the stream and read it back.
    Using fs As FileStream = File.Open(path, FileMode.Open, FileAccess.Read, FileShare.None)
      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

      Try
        ' Try to get another handle to the same file. 
        Using fs2 As FileStream = File.Open(path, FileMode.Open)
          ' Do some task here.
        End Using
      Catch e As Exception
        Console.Write("Opening the file twice is disallowed.")
        Console.WriteLine(", as expected: {0}", e.ToString())
      End Try

    End Using

  End Sub
End Class

Remarques

Le paramètre path est autorisé à spécifier des informations sur le chemin d’accès relatif ou absolu.The path parameter is permitted to specify relative or absolute path information. Les informations relatives au chemin d’accès relatif sont interprétées par rapport au répertoire de travail actuel.Relative path information is interpreted as relative to the current working directory. Pour obtenir le répertoire de travail actuel, consultez GetCurrentDirectory.To obtain the current working directory, see GetCurrentDirectory.

Pour obtenir la liste des tâches d’e/s courantes, consultez tâches d’e/s courantes.For a list of common I/O tasks, see Common I/O Tasks.

Sécurité

FileIOPermission
pour la lecture et l’écriture dans le fichier spécifié.for reading from and writing to the specified file. Énumérations associées : Read, WriteAssociated enumerations: Read, Write

Voir aussi

S’applique à