URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 621
[ Назад ]

Исходное сообщение
"Двоичный или текстовый режим по-умолчанию?"

Отправлено David , 24-Мрт-02 23:30 
Во FreeBSD 4.4 не определены константы O_BINARY, O_TEXT. Кто-нить знает в каком режиме open открывает файл по-умолчанию и как его изменить при отсутствии вышеуказанных констант?

Содержание

Сообщения в этом обсуждении
"Подскажите заодно:"
Отправлено David , 24-Мрт-02 23:49 
Извиняюсь за ламерский вопрос, но всё же:
Как узнать размер файла? Какую функцию для этого юзать надо?
Спасибо.

"RE: Подскажите заодно:"
Отправлено zaa , 25-Мрт-02 03:32 
>Извиняюсь за ламерский вопрос, но всё
>же:
>Как узнать размер файла? Какую функцию
>для этого юзать надо?
>Спасибо.

man 2 fstat



"RE: Подскажите заодно:"
Отправлено Арлекин , 25-Мрт-02 10:18 
Про stat все правильно.
А насчет файлов - тот случай, о котором я тебе недавно писАл. ЗАБУДЬ всё виндовое...
*nix системы не делают различия между текстовыми и бинарными файлами. Соответственно ф-ции низкого уровня не имеют соответствующих параметров.
man -s2 open

"RE: Подскажите заодно:"
Отправлено David , 25-Мрт-02 16:31 
Спасибо. Насчёт режима открытия всё понятно, сам должен был догадаться. А вот насчёт размера я имел ввиду неоткрытый файл, то есть по пути. Размер открытого файла проще узнасть с помощью lseek(). Но всё равно спасибо. Про функцию fstat я не знал.


"по пути просто stat( path, &struct stat );"
Отправлено Арлекин , 25-Мрт-02 16:51 
Собственно и всё.

"RE: о lseek()"
Отправлено Арлекин , 25-Мрт-02 16:55 
Опасная штучка, кстати. Если файл нужен с начала( файла ) lseek() можно "забыть" на хвосте..., да и ЛЮБЫЕ операции непосредственно с файлом тормозят софт по определению. Я использую stat(...) до открытия - можно рассчитывать размеры любых данных, связанных с файлом.
Дело вкуса, вобщем.