FileSystem.FileOpen Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Ouvre un fichier pour entrée ou sortie. La fonctionnalité My
améliore la productivité et les performances des opérations d’E/S de fichier par rapport à 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
Obligatoire. N’importe quel numéro de fichier valide. Utilisez la fonction FreeFile
pour obtenir le numéro du prochain fichier disponible.
- FileName
- String
Obligatoire. Une expression de chaîne qui spécifie un nom de fichier. Peut inclure le répertoire ou le dossier, ainsi que le lecteur.
- Mode
- OpenMode
Obligatoire. Énumération spécifiant le mode de fichier : Append
, Binary
, Input
, Output
ou Random
. Pour plus d'informations, consultez OpenMode.
- Access
- OpenAccess
Optionnel. Énumération spécifiant quelles sont les opérations autorisées sur le fichier ouvert : Read
, Write
ou ReadWrite
. La valeur par défaut est ReadWrite
. Pour plus d'informations, consultez OpenAccess.
- Share
- OpenShare
Optionnel. É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
. La valeur par défaut est Lock Read Write
. Pour plus d'informations, consultez OpenShare.
- RecordLength
- Int32
Optionnel. 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.
Exceptions
La longueur d'enregistrement est négative (et différente de -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 FileOpen
et la 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 pour les opérations d’écriture uniquement.
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 mode ; n’importe quel processus peut lire ou écrire dans Output
un 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 Accès aux fichiers avec Visual Basic.
Vous devez ouvrir un fichier avant qu’une opération d’E/S puisse y être effectuée. 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 elle 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é par FileName
existe, l’application a besoin d’une Write
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 plutôt que dans le répertoire racine ou le répertoire Program Files.
Le canal à ouvrir est accessible à l’aide de la FreeFile()
fonction .
Important
La FileOpen
fonction nécessite l’accès Read
à partir de l’énumération FileIOPermissionAccess
, ce qui peut affecter son exécution dans des situations d’approbation partielle. Pour plus d’informations, consultez FileIOPermissionAccess énumération.