IBM Lotus Symphony
|
Ouvre un canal de données.
Open FileName As String [For Mode] [Access IOMode] [Protected] As [#]FileNumber As Integer [Len = DatasetLength]
FileName : nom et chemin d'accès du fichier que vous souhaitez ouvrir. Si vous essayez de lire un fichier qui n'existe pas (Access = Read), un message d'erreur s'affiche. Si vous essayez d'écrire dans un fichier qui n'existe pas (Access = Write), un nouveau fichier est créé.
Mode : mot-clé spécifiant le mode du fichier. Valeurs valides : Append (ajout à un fichier séquentiel), Binary (les données sont accessibles par octets à l'aide de Get et Put), Input (ouvre un canal de données pour lecture), Output (ouvre un canal de données pour écriture) et Random (modifie des fichiers relatifs).
IOMode : mot-clé définissant le type d'accès. Valeurs valides : Read (lecture seule), Write (écriture seule), Read Write (lecture-écriture).
Protected : mot-clé définissant l'état de sécurité d'un fichier après son ouverture. Valeurs valides : Shared (le fichier peut être ouvert par d'autres applications), Lock Read (le fichier est protégé contre la lecture), Lock Write (le fichier est protégé contre l'écriture), Lock Read Write (l'accès au fichier est refusé).
FileNumber : expression de type nombre entier comprise entre 0 et 511 pour indiquer le numéro d'un canal de données libre. Vous pouvez alors transmettre des commandes via le canal de données pour accéder au fichier. Le numéro de fichier doit être déterminé par la fonction FreeFile immédiatement avant l'instruction Open.
DatasetLength : pour les fichiers à accès aléatoire, définissez la longueur des enregistrements.
![]() |
Vous pouvez uniquement modifier le contenu d'un fichier qui a été ouvert à l'aide de l'instruction Open. Si vous essayez d'ouvrir un fichier qui est déjà ouvert, un message d'erreur s'affiche. |
Sub ExampleWorkWithAFile
Dim iNumber As Integer
Dim sLine As String
Dim aFile As String
Dim sMsg as String
aFile = "c:\data.txt"
iNumber = Freefile
Open aFile For Output As #iNumber
Print #iNumber, "Ceci est une ligne de texte."
Print #iNumber, "Ceci est une autre ligne de texte."
Close #iNumber
iNumber = Freefile
Open aFile For Input As iNumber
While not eof(iNumber)
Line Input #iNumber, sLine
If sLine <>"" then
sMsg = sMsg & sLine & chr(13)
end if
wend
Close #iNumber
Msgbox sMsg
End Sub