Κεφάλαια >> Ερωτήσεις p6ου Κεφαλαίου
Εντοπισμός θÎσης στο αÏχείο
|
H μÎθοδος fin.tell() επιστρÎφει Îναν ακÎραιο που περιÎχει την τρÎχουσα θÎση
στο αρχείο, υπολογισμÎνη σε χαρακτήρες (bytes) απÏŒ την αρχή του αρχείου.
Με άλλα λÏŒγια, η επÏŒμενη ανάγνωση ή εγγραφή θα γίνει σε εκείνη τη θÎση του
αρχείου.
H μÎθοδος fin.tell() επιστρÎφει Îναν ακÎραιο που περιÎχει την τρÎχουσα θÎσηστο αρχείο, υπολογισμÎνη σε χαρακτήρες (bytes) απÏŒ την αρχή του αρχείου.Με άλλα λÏŒγια, η επÏŒμενη ανάγνωση ή εγγραφή θα γίνει σε εκείνη τη θÎση τουαρχείου. Για να αλλάξουμε την τρÎχουσα θÎση του αρχείου, μποροÏμε να χρησιμοποιήσουμε την fin.seek() (offset[, from_what]). Η θÎση υπολογίζεται προσθÎτοντας offset (πλήθος bytes) σε Îνα σημείο αναφοράς, το οποίο επιλÎγεται απÏŒ το from_what ÏŒρισμα. Αν το from_what Îχει τιμή 0, μετρά απÏŒ την αρχή του αρχείου, αν Îχει 1, χρησιμοποιεί την τρÎχουσα θÎση του αρχείου και αν Îχει 2, χρησιμοποιεί το τÎλος του αρχείου. >>> fin = open(“workfile”, “r+”) >>> fin.write(“0123456789abcdef”) >>> fin.seek(5) # πηγαίνει στο 6ο byte στο αρχείο >>> fin.read(1) 5 >>> fin.seek(-3, 2) # πηγαίνει στο 3ο byte πριν το τÎλος >>> fin.read(1) d |