FileSystem.FileOpen Méthode

Définition

Ouvre un fichier pour l’entrée ou la sortie. La My fonctionnalité vous offre une meilleure productivité et des performances dans les opérations d’E/S de fichier que FileOpen. Pour plus d’informations, consultez FileSystem.

public static void FileOpen(int FileNumber, string FileName, Microsoft.VisualBasic.OpenMode Mode, Microsoft.VisualBasic.OpenAccess Access = Microsoft.VisualBasic.OpenAccess.Default, Microsoft.VisualBasic.OpenShare Share = Microsoft.VisualBasic.OpenShare.Default, int RecordLength = -1);
static member FileOpen : int * string * Microsoft.VisualBasic.OpenMode * Microsoft.VisualBasic.OpenAccess * Microsoft.VisualBasic.OpenShare * int -> unit
Public Sub FileOpen (FileNumber As Integer, FileName As String, Mode As OpenMode, Optional Access As OpenAccess = Microsoft.VisualBasic.OpenAccess.Default, Optional Share As OpenShare = Microsoft.VisualBasic.OpenShare.Default, Optional RecordLength As Integer = -1)

Paramètres

FileNumber
Int32

Required. N’importe quel numéro de fichier valide. Utilisez la FreeFile fonction pour obtenir le numéro de fichier disponible suivant.

FileName
String

Required. Expression de chaîne qui spécifie un nom de fichier : peut inclure un répertoire ou un dossier et un lecteur.

Mode
OpenMode

Required. Énumération spécifiant le mode fichier : Append, , BinaryInput, Output, ou Random. Pour plus d'informations, consultez OpenMode.

Access
OpenAccess

Optional. Énumération spécifiant les opérations autorisées sur le fichier ouvert : Read, Writeou ReadWrite. La valeur par défaut est ReadWrite. Pour plus d'informations, consultez OpenAccess.

Share
OpenShare

Optional. Énumération spécifiant les opérations non autorisées sur le fichier ouvert par d’autres processus : Shared, , Lock ReadLock Write, et Lock Read Write. La valeur par défaut est Lock Read Write. Pour plus d'informations, consultez OpenShare.

RecordLength
Int32

Optional. Nombre inférieur ou égal à 32 767 (octets). Pour les fichiers ouverts pour un accès aléatoire, cette valeur correspond à la longueur de l'enregistrement. pour les fichiers séquentiels, cette valeur correspond au nombre de caractères en mémoire tampon.

Exceptions

La longueur de l’enregistrement est négative (et non égale à -1).

FileName est déjà ouvert ou FileName n’est pas valide.

Exemples

Cet exemple illustre différentes utilisations de la fonction pour activer l’entrée et la FileOpen sortie dans un fichier.

Le code suivant ouvre le fichier TestFile en Input mode.

FileOpen(1, "TESTFILE", OpenMode.Input)
' Close before reopening in another mode.
FileClose(1)

Cet exemple montre comment ouvrir le fichier en Binary mode d’écriture uniquement pour les opérations d’écriture.

FileOpen(1, "TESTFILE", OpenMode.Binary, OpenAccess.Write)
' Close before reopening in another mode.
FileClose(1)

L’exemple suivant ouvre le fichier en Random mode. Le fichier contient des enregistrements de la structure Person.

Structure Person
    <VBFixedString(30)> Dim Name As String
    Dim ID As Integer
End Structure
Public Sub ExampleMethod()
    ' Count 30 for the string, plus 4 for the integer.
    FileOpen(1, "TESTFILE", OpenMode.Random, , , 34)
    ' Close before reopening in another mode.
    FileClose(1)
End Sub

Cet exemple de code ouvre le fichier en Output mode ; tout processus peut lire ou écrire dans le fichier.

FileOpen(1, "TESTFILE", OpenMode.Output, OpenAccess.Default, OpenShare.Shared)
' Close before reopening in another mode.
FileClose(1)

Cet exemple de code ouvre le fichier en Binary mode lecture ; d’autres processus ne peuvent pas lire le fichier.

FileOpen(1, "TESTFILE", OpenMode.Binary, OpenAccess.Read,
   OpenShare.LockRead)

Remarques

La FileOpen fonction est fournie pour la compatibilité descendante et peut affecter les performances. Pour les applications non héritées, l’objet My.Computer.FileSystem offre de meilleures performances. Pour plus d’informations, consultez File Access avec Visual Basic.

Vous devez ouvrir un fichier avant d'effectuer toute opération d'E/S. FileOpen alloue une mémoire tampon pour les E/S au fichier et détermine le mode d’accès à utiliser avec la mémoire tampon.

Important

Lors de l’écriture dans un fichier, une application peut avoir à créer un fichier, si le fichier dans lequel il tente d’écrire n’existe pas. Pour ce faire, il a besoin d’une autorisation pour le répertoire dans lequel le fichier doit être créé. Toutefois, si le fichier spécifié FileName existe, l’application a besoin Write d’autorisation uniquement pour le fichier lui-même. Dans la mesure du possible, pour améliorer la sécurité, créez le fichier pendant le déploiement et accordez Write l’autorisation à ce fichier uniquement, au lieu de l’ensemble du répertoire. Pour améliorer la sécurité, écrivez des données dans des répertoires utilisateur au lieu du répertoire racine ou du répertoire Program Files.

Le canal à ouvrir est disponible à l’aide de la FreeFile() fonction.

Important

La FileOpen fonction nécessite Read l’accès à partir de l’énumération FileIOPermissionAccess , ce qui peut affecter son exécution dans des situations de confiance partielle. Pour plus d’informations, consultez FileIOPermissionAccess énumération.

S’applique à

Voir aussi