Sì. La funzione lseek
si utilizza in the same library.
È quindi possibile cercare qualsiasi offset relativo all'inizio o alla fine del file o relativo alla posizione corrente.
Non essere sopraffatto da quella pagina della libreria. Ecco alcuni semplici esempi di utilizzo e probabilmente la maggior parte delle persone avrà mai bisogno di:
lseek(fd, 0, SEEK_SET); /* seek to start of file */
lseek(fd, 100, SEEK_SET); /* seek to offset 100 from the start */
lseek(fd, 0, SEEK_END); /* seek to end of file (i.e. immediately after the last byte) */
lseek(fd, -1, SEEK_END); /* seek to the last byte of the file */
lseek(fd, -10, SEEK_CUR); /* seek 10 bytes back from your current position in the file */
lseek(fd, 10, SEEK_CUR); /* seek 10 bytes ahead of your current position in the file */
Buona fortuna!
fonte
2013-11-05 02:25:18
Che cosa fa esattamente "dove" fare? Sono un po 'confuso dal suo uso delle parole "buchi" e "dati". I valori non sono zero e valori zero dei fori? – zaloo
Il 'quale' governa ciò che l'offset è relativo a. Quindi se chiedi 10 byte con 'SEEK_SET', saranno 10 byte dall'inizio del file. Se richiedi 6 byte con 'SEEK_CUR', saranno 16 byte dall'inizio del file. – paddy
Non preoccuparti delle lacune e dei buchi. Si tratta della situazione in cui cerchi oltre la fine di un file. – paddy