Partager via


FileSystem.FileOpen, méthode

Ouvre un fichier pour entrée ou sortie. La fonctionnalité My permet une meilleure productivité et de meilleures performances dans les opérations d'E/S de fichier que FileOpen. Pour plus d'informations, consultez My.Computer.FileSystem, objet.

Espace de noms : Microsoft.VisualBasic
Assembly : Microsoft.VisualBasic (dans microsoft.visualbasic.dll)

Syntaxe

'Déclaration
Public Shared Sub FileOpen ( _
    FileNumber As Integer, _
    FileName As String, _
    Mode As OpenMode, _
    <OptionalAttribute> Optional Access As OpenAccess = OpenAccess.Default, _
    <OptionalAttribute> Optional Share As OpenShare = OpenShare.Default, _
    <OptionalAttribute> Optional RecordLength As Integer = -1 _
)
'Utilisation
Dim FileNumber As Integer
Dim FileName As String
Dim Mode As OpenMode
Dim Access As OpenAccess
Dim Share As OpenShare
Dim RecordLength As Integer

FileSystem.FileOpen(FileNumber, FileName, Mode, Access, Share, RecordLength)
public static void FileOpen (
    int FileNumber,
    string FileName,
    OpenMode Mode,
    [OptionalAttribute] OpenAccess Access,
    [OptionalAttribute] OpenShare Share,
    [OptionalAttribute] int RecordLength
)
public:
static void FileOpen (
    int FileNumber, 
    String^ FileName, 
    OpenMode Mode, 
    [OptionalAttribute] OpenAccess Access, 
    [OptionalAttribute] OpenShare Share, 
    [OptionalAttribute] int RecordLength
)
public static void FileOpen (
    int FileNumber, 
    String FileName, 
    OpenMode Mode, 
    /** @attribute OptionalAttribute() */ OpenAccess Access, 
    /** @attribute OptionalAttribute() */ OpenShare Share, 
    /** @attribute OptionalAttribute() */ int RecordLength
)
public static function FileOpen (
    FileNumber : int, 
    FileName : String, 
    Mode : OpenMode, 
    Access : OpenAccess, 
    Share : OpenShare, 
    RecordLength : int
)

Paramètres

  • FileNumber
    Obligatoire. Tout numéro de fichier valide. Utilisez la fonction FreeFile pour obtenir le numéro du prochain fichier disponible.
  • FileName
    Obligatoire. Expression String qui spécifie un nom de fichier. Peut inclure le répertoire ou le dossier, ainsi que le lecteur.
  • Mode
    Obligatoire. Énumération spécifiant le mode de fichier : Append, Binary, Input, Output ou Random. (Pour plus d'informations, consultez OpenMode, énumération).
  • Access
    Facultatif. Énumération spécifiant quelles sont les opérations autorisées sur le fichier ouvert : Read, Write ou ReadWrite. Valeur par défaut à ReadWrite. (Pour plus d'informations, consultez OpenAccess, énumération).
  • Share
    Facultatif. Énumération spécifiant les opérations non autorisées sur le fichier ouvert par d'autres processus : Shared, Lock Read, Lock Write et Lock Read Write. Valeur par défaut à Lock Read Write. (Pour plus d'informations, consultez OpenShare, énumération).
  • RecordLength
    Facultatif. Nombre inférieur ou égal à 32 767 (octets). Pour les fichiers ouverts pour accès aléatoire, cette valeur est la longueur de l'enregistrement. Pour les fichiers à accès séquentiel, cette valeur est le nombre de caractères mis en mémoire tampon.

Notes

Pour plus d'informations, consultez la rubrique Visual Basic FileOpen, fonction.

La fonction FileOpen est fournie pour des raisons de compatibilité descendante et peut affecter les performances. Pour les applications non héritées (non-legacy), l'objet My.Computer.FileSystem offre de meilleures performances. Pour plus d'informations, consultez Accès au fichier avec Visual Basic.

Vous devez ouvrir un fichier avant de pouvoir exécuter sur ce fichier toute opération d'E/S. FileOpen alloue une mémoire tampon pour E/S au fichier et détermine le mode d'accès à utiliser avec la mémoire tampon.

Remarque de sécuritéRemarque de sécurité

Lors de l'écriture dans un fichier, une application peut avoir à créer un fichier, si celui sur lequel elle tente d'écrire n'existe pas. Pour cela, elle a besoin d'une autorisation d'accès au répertoire dans lequel le fichier sera créé. Toutefois, si le fichier spécifié par FileName existe, l'application n'a besoin que de l'autorisation Write sur le fichier lui-même. Lorsque cela est possible, afin d'améliorer la sécurité, créez le fichier au cours du déploiement et n'accordez d'autorisation Write que sur ce fichier, plutôt que sur tout le répertoire. Pour contribuer à une meilleure sécurité, écrivez les données sur les répertoires utilisateur plutôt que sur le répertoire racine ou le répertoire Program Files.

Le canal à ouvrir peut se trouver à l'aide de la fonction FreeFile().

Remarque de sécuritéRemarque de sécurité

La fonction FileOpen requiert un accès Read de l'énumération FileIOPermissionAccess, ce qui peut affecter son exécution dans des situations ou le niveau de confiance n'est que partiel. Pour plus d'informations, consultez l'énumération FileIOPermissionAccess et Demande d'autorisations.

Exemple

Cet exemple illustre diverses utilisations de la fonction FileOpen pour permettre d'entrer des données sur un fichier et d'en sortir.

Le code suivant ouvre le fichier TestFile en mode Input.

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

Cet exemple ouvre le fichier en mode Binary, uniquement pour écrire des opérations.

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

L'exemple suivant ouvre le fichier en mode Random. 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 mode Output ; tout processus peut lire ou écrire sur 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 mode Binary pour lire ; les autres processus ne peuvent pas lire le fichier.

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

Plates-formes

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Édition Media Center, Windows XP Professionnel Édition x64, Windows XP SP2, Windows XP Starter Edition

Le .NET Framework ne prend pas en charge toutes les versions de chaque plate-forme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise.

Informations de version

.NET Framework

Prise en charge dans : 2.0, 1.1, 1.0

Voir aussi

Référence

FileSystem, classe
Membres FileSystem
Microsoft.VisualBasic, espace de noms

Autres ressources

FileOpen, fonction
FileClose, fonction
FreeFile, fonction
Lecture à partir de fichiers en Visual Basic
Écriture dans des fichiers en Visual Basic