LINUX.ORG.RU

Как получить текущую позицию в файле?


0

0

Как получить текущую позицию в файле?

#include<stdio.h> #include <fcntl.h>

int main(void) { FILE *stream; stream = open("./DUMMY.FIL",O_RDWR); write(stream,"Это тест",15); // printf("Указатель файла: %ld\n",tell(stream)); close(stream); return 0; }

Под SCO работал tell(stream) в linux такой ф-ции нет. P.S. ftell + fopen не предлагать ...

anonymous

> P.S. ftell не предлагать...
А что не устраивает?
P.S.: отформатировать текст было бы классно?

UVV ★★★★★
()

open вобще-то возвращает дескриптор файла (int), а не FILE *.

А узнать позицию используя ядреные, а не libc-шные функции можено так lseek(fd, 0, SEEK_CUR).

kpanic ★★
()

С переносами строк ...
Как получить текущую позицию в файле?

#include<stdio.h>
#include <fcntl.h>


int main(void)
{
FILE *stream;
stream = open("./DUMMY.FIL",O_RDWR);
write(stream,"Это тест",15);
// printf("Указатель файла: %ld\n",tell(stream));
close(stream);
return 0;
}

Под SCO работал tell(stream) в linux такой ф-ции нет.
P.S. ftell + fopen не предлагать ...

anonymous
()
Ответ на: комментарий от anonymous

>open вобще-то возвращает дескриптор файла (int), а не FILE *.

Это из примера по ftell осталось

>А узнать позицию используя ядреные, а не libc-шные функции можено так lseek(fd, 0, SEEK_CUR).

А за это спасибо, как я сам не додумался ...

anonymous
()
Ответ на: комментарий от anonymous

Не знаю правильно это или нет, но я юзаю `ftello`

Nazgul
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.