====== seek ====== Change la position du curseur dans un canal ouvert ===== Syntaxe ===== seek channelId offset ?origin? ===== Description ===== Change la position du curseur courante pour //channelId//. //channelId// doit être un identificateur de canal tel que renvoyé par un précédent appel de [[:tcl::open]] ou [[:tcl:socket]]. Les arguments //offset// et //origin// spécifient la position à laquelle la lecture ou écriture suivante se produira pour //channelId//. //offset// doit être un entier (qui peut être négatif) et //origin// doit être un des suivants: * **start** La nouvelle position sera à offset octets du début du fichier ou périphérique sous-jacent. * **current** La nouvelle position sera sera à offset octets de la position courante; un offset négatif déplace le curseur en arrière dans le fichier ou périphérique sous-jacent. * **end** La nouvelle position sera à offset octets de la fin du fichier ou périphérique Un offset négatif place le curseur avant la fin de fichier, et un offset positif place le curseur après la fin du fichier. L'argument origin est par défaut à start. La commande vide toutes les données dans le tampon de sortie du canal avant que la commande retourne, même si le canal est en mode non bloquant. Elle écarte aussi toute entrée en tampon non lue. Cette commande retourne une chaîne vide. Une erreur se produit si cette commande est appliquée aux canaux dont le fichier ou périphérique sous-jacent ne supporte pas la recherche. Notez que les valeurs offset sont des offsets d'octets, pas des offsets caractères L'ensemble seek et [[:tcl:tell]] opère en termes d'octets, pas de caractères, contrairement à [[:tcl:read]] ===== Exemples ===== ===== Voir aussi ===== {{tag>tcl}}