J'utilise os.ReadAt() pour lire certaines lignes dans un fichier csv/tsv. Cependant, je ne sais pas combien d'octets sont dans cette rangée, j'ai juste besoin de lire la ligne en commençant par le décalage d'octets que je spécifie jusqu'à la nouvelle ligne.Lecture d'une ligne d'un fichier commençant à l'octet offset jusqu'à la nouvelle ligne
buffer = make([]byte, 46)
os.ReadAt(buffer, 64) //Read at byte offset 64 and put contents in buffer
Cependant, cela ne me permet de lire 46 octets de la ligne. Est-il possible de lire toute la ligne jusqu'à ce que la nouvelle ligne?
Merci
Mise à jour:
Je viens de créer une structure qui tient le décalage et la longueur de la ligne .. Si avez fait cela au début .. mon mauvais
je dois remonter dans le fichier Im en train de lire, donc je ne peux pas simplement ignorer les octets n prochains. Je dois parfois revenir en haut du fichier. Pouvez-vous mettre un nombre négatif à la défausse? –
Non, mais vous pouvez utiliser 'file.seek()' et créer un autre 'bufio.Reader' si vous en avez besoin. – Motakjuq
Ouais .. J'essayais d'éviter ça .. mais je suppose que c'est la seule option. Merci! –