@FILESEEK[n,offset,start] Déplace le pointeur du fichier dont le handle est n par offset d' octets à partir de l'emplacement de référence spécifié par start (voir le tableau ci-dessous). La valeur de retour de @FILESEEK est le décalage du pointeur de fichier par rapport au début du fichier après le déplacement spécifié. Si le décalage est négatif, le pointeur de fichier est déplacé de l'emplacement de référence vers le début du fichier. Si le décalage est positif, le pointeur de fichier est déplacé de l'emplacement de référence vers la fin du fichier. Si le décalage est égal à 0, le pointeur est déplacé vers l'emplacement de référence.
Si la fonction échoue, la valeur de retour est -1.
début |
emplacement de référence |
0 |
début du fichier |
1 |
pointeur du fichier actuel |
2 |
fin du fichier |
Numeric input may be entered in either decimal format (a sequence of 0-9 digits) or in hexadecimal format ("0x" followed by a sequence of 0-F hex digits).
Cette fonction ne doit être utilisée qu'avec les pointeurs de fichiers renvoyés par @FILEOPEN. Si vous l'utilisez avec un autre numéro , vous risquez d'endommager d'autres fichiers ouverts par TCC (ou par le programme qui a lancé TCC).
Cas particuliers utiles
Si vous mettez offset à 0:
•@FILESEEK[n,0,0] déplace le pointeur de fichier au début du fichier
•@FILESEEK[n,0,1] renvoie l'emplacement actuel du pointeur de fichier sans le déplacer.
•@FILESEEK[n,0,2] déplace le pointeur de fichier à la fin du fichier et renvoie la taille actuelle du fichier.
Exemple :
set h=%@fileopen["d:\path\myfile.txt",rw]
echo file size = %@fileseek[%h,0,2]
echo closing handle #%h: %@fileclose[%h]
Voir également les fonctions connexes basées sur les handles :
| @FILECLOSE | Fermer un handle de fichier |
| @FILEOPEN | Ouvrir un handle de fichier |
| @FILEREAD | Lire la ligne suivante à partir d'un handle de fichier |
| @FILESEEKL | Déplacer le pointeur d'un gestionnaire de fichier vers une ligne spécifiée |
| @FILEWRITE | Écriture de la ligne suivante dans une poignée de fichier |
| @FILEWRITEB | Écriture de données dans un gestionnaire de fichier |
| @TRUNCATE | Tronquer le fichier à la position actuelle du pointeur de la poignée de fichier. |