fd.seek() IOError: [Errno 22] Invalid argument
Mon Interpréteur Python (v2.6.5) soulève l'erreur ci-dessus dans la suite de codepart:
fd = open("some_filename", "r")
fd.seek(-2, os.SEEK_END) #same happens if you exchange the second arg. w/2
data=fd.read(2);
dernier appel est fd.seek()
Traceback (most recent call last):
File "bot.py", line 250, in <module>
fd.seek(iterator, os.SEEK_END);
IOError: [Errno 22] Invalid argument
La chose étrange est que l'exception se produit lors de l'exécution de la totalité de mon code, pas si seulement la partie avec l'ouverture de fichier.
Lors de l'exécution de la présente partie du code, le fichier ouvert définitivement existe, le disque n'est pas plein, la variable "itérateur" contient une valeur correcte comme dans le premier codeblock.
Ce qui pourrait être mon erreur?
Merci d'avance
est-il possible que votre fichier est vide? De sorte qu'il ne peut pas demander à tous le chemin du retour à -2?
il suffit de double vérifié, le fichier existant est à deux fois avant de l'ouvrir avant la fin de la recherche.
le fichier existe ET a en elle quelque chose? Un fichier peut exister mais toujours vides.
il suffit de double vérifié, le fichier existant est à deux fois avant de l'ouvrir avant la fin de la recherche.
le fichier existe ET a en elle quelque chose? Un fichier peut exister mais toujours vides.
OriginalL'auteur Julian | 2010-04-27
Vous devez vous connecter pour publier un commentaire.
De
lseek(2)
:Donc double-vérifier la valeur de
iterator
."ou le fichier résultant de décalage négative". Qu'est-ce que la taille du fichier?
vous l'avez compris... c'était ZÉRO, bien que je me demande pourquoi, dois-je .close() un fichier avant de le lire?
la fermeture et la réouverture du fichier dans chaque itération de la boucle est la solution 🙂 merci
OriginalL'auteur wRAR