Valide sur les plates-formes NetWare, Symbian OS, UNIX, Windows et Windows CE
La fonction ReadFile lit les données à partir d'un fichier.
La fonction de contenu de fichier présente l'un des formats suivants :
ReadFile (handle as Integer, buffer as String) as Boolean
ReadFile (handle as Integer, buffer as String, buflen as Integer) as Boolean
ReadFile (handle as Integer, buffer as Void) as Boolean
ReadFile (handle as Integer, buffer as Void, buflen as Integer) as Boolean
Identifie le descripteur de fichier renvoyé par l'appel précédent d'OpenFile ou de CreateFile.
Indique une variable d'un type quelconque.
Les tampons de type tableaux de caractères sont traités comme des chaînes.
Si l'argument buffer est une variable Chaîne, la fonction effectue la lecture à partir de la position actuelle dans le fichier et s'arrête lorsqu'elle lit un caractère de nouvelle ligne ou lorsque le nombre maximum de caractères a été atteint. Si l'argument buffer est d'un autre type, la fonction effectue la lecture à partir de la position actuelle dans le fichier et s'arrête lorsque le tampon est plein ou que le pointeur de fichier atteint la fin du fichier.
Void signifie que le type d'objet peut être tout type autorisé, à l'exception d'une chaîne ou d'un tableau de caractères.
Indique le nombre d'octets à lire depuis le fichier dans le tampon. Si le fichier a des octets insuffisants, tous les octets restants sont transmis dans le tampon.
En cas de réussite, la fonction renvoie TRUE (Vrai), sinon elle renvoie FALSE (Faux).
Remarque : Ne mélangez pas les différents formats de la fonction ReadFile(), car cela peut donner des résultats inattendus.
Contrairement aux autres formats, le premier format lit la chaîne sous forme de ligne de texte terminée par un signe nouvelle ligne ou fin de fichier, et stocke les informations dans le tampon sans le signe nouvelle ligne. L'interpréteur mappe cette fonction vers une fonction différente de lecture système que les trois autres formats. Les autres formats ReadFile sont mappes vers une fonction de lecture système commune.
Les autres fonctions de lecture système peuvent également utiliser des caches et des pointeurs de lecture différents pour extraire les données. Si les formats sont mélangés, les données risquent de ne pas être lues dans l'ordre dans lequel elles ont été stockées sur le disque.
Dans le cas du premier format, la chaîne lue est une ligne de texte qui se termine par un signe de nouvelle ligne ou de fin de fichier. Les informations sont stockées dans le tampon sans cette nouvelle ligne. Ceci n'est pas valable pour les autres fonctions ReadFile.
En outre, l'interpréteur mappe cette fonction vers une autre fonction de lecture système que celle des trois autres formats qui ont été associés à une fonction de lecture système commune. Les autres fonctions de lecture système peuvent également utiliser des caches et des pointeurs de lecture différents pour extraire les données. Si les formats sont mélangés, les données risquent de ne pas être lues dans l'ordre dans lequel elles ont été stockées sur le disque.
Exemple :
Dim fIn, fOut as integer ' Déclarez les descripteurs de fichier
Dim OneLine as string ' Chaîne devant tenir sur une ligne
Rem Ouvrez d'abord le fichier d'entrée...
fIn=OpenFile("C:\CONFIG.SYS",O_READ)
if fIn<0 then
MessageBox("Impossible d'ouvrir le fichier d'entrée","Erreur")
Goto End
End if
Rem ...Ensuite, créez le fichier de sortie...
fOut=CreateFile("C:\CONFIG.BAK")
if fOut<0 then
MessageBox("Impossible de créer le fichier de sortie","Erreur")
CloseFile(fIn)
Goto End
End if
Rem ...Copiez les lignes jusqu'à ce qu'il n'en reste plus...
while Not(Eof(fIn))
if ReadFile(fIn,OneLine) then WriteFile(fOut,OneLine)
wend
Rem ...Refermez les fichiers et indiquez la réussite de l'opération.
CloseFile(fIn)
CloseFile(fOut)
MsgBox("Une copie de sauvegarde du fichier CONFIG.SYS a été créée","MonScript",MB_OK)
end:
|
Copyright © 2014 CA Technologies.
Tous droits réservés.
|
|