Форум программистов, компьютерный форум, киберфорум
C/С++ под Linux
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 19.12.2018
Сообщений: 51

Получить размер большого файла(6Гб и более)

28.04.2019, 17:59. Показов 1791. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Как я могу получить размер большого файла,более 6Гб?
Использую следующий код,но получаю отрицательное значение.
C
1
2
3
4
5
6
7
8
int main() 
{
    struct stat st_one;
    stat("E:\\11.mp4",&st_one);
    printf("%d",st_one.st_size);
 
    getchar();
}
Если "%d" поменять на "%lu" получаю положительное число,но оно не соответствует размеру,примерно в 2 раза меньше.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.04.2019, 17:59
Ответы с готовыми решениями:

Подскажите как получить размер самого большого файла в папке
батник получить размер самого большого файла в папке

Узнать размер файла более 4 ГБ
Мне нужно работать с разными файлами. Проблема в том, что функция filesize() от 32-битного PHP умеет определять размер только файлов,...

Узнать размер файла если он более 8 гб
GetFileSizeEx работает только с файлами <=8 гб. Как правильно узнать размер файла более 8 гб, и как узнать что он более 8 гб при...

7
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 643
29.04.2019, 07:49
Лучший ответ Сообщение было отмечено Sherman86 как решение

Решение

это off_t соответственно %lld или %jd
1
0 / 0 / 0
Регистрация: 19.12.2018
Сообщений: 51
29.04.2019, 07:51  [ТС]
Цитата Сообщение от prik Посмотреть сообщение
это off_t соответственно %lld или %jd
Спасибо
0
153 / 148 / 66
Регистрация: 20.02.2014
Сообщений: 556
29.04.2019, 13:44
Sherman86, как вариант использовать макросы для unsigned integer PRIxMAX
1
0 / 0 / 0
Регистрация: 19.12.2018
Сообщений: 51
29.04.2019, 18:21  [ТС]
Цитата Сообщение от Вованя Посмотреть сообщение
Sherman86, как вариант использовать макросы для unsigned integer PRIxMAX
Спасибо,попробую.
0
599 / 421 / 137
Регистрация: 02.10.2008
Сообщений: 1,798
Записей в блоге: 1
02.05.2019, 21:25
Как вариант - использовать llseek() (именно с двумя LL), т.к. если у вас 32битная система, то тип off_t будет тоже 32битный.
С llseek - сначала запоминаем текузую позицию с SEEK_CUR, потом переводим указатель на конес с SEEK_END и там узнаём размер в байтах (уже в 64бита независимо от разрядности ОСи), и возвращаем, запомненное при SEEK_CUR значение при помощи SEEK_SET.
0
0 / 0 / 0
Регистрация: 19.12.2018
Сообщений: 51
02.05.2019, 21:41  [ТС]
Цитата Сообщение от drfaust Посмотреть сообщение
Как вариант - использовать llseek() (именно с двумя LL), т.к. если у вас 32битная система, то тип off_t будет тоже 32битный.
С llseek - сначала запоминаем текузую позицию с SEEK_CUR, потом переводим указатель на конес с SEEK_END и там узнаём размер в байтах (уже в 64бита независимо от разрядности ОСи), и возвращаем, запомненное при SEEK_CUR значение при помощи SEEK_SET.
Как я понял,для этого нужно сначала открыть файл?Без открытия возможно?
0
599 / 421 / 137
Регистрация: 02.10.2008
Сообщений: 1,798
Записей в блоге: 1
03.05.2019, 08:27
Цитата Сообщение от Sherman86 Посмотреть сообщение
Без открытия возможно?
В моём примере нельзя.

Самый дуболомный метод ещё сложнее - распарсить структуру каталога в котором лежит файл.

А оптимальнее всего - подсмотреть как делает ls в его исходниках.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.05.2019, 08:27
Помогаю со студенческими работами здесь

Получить количество строк большого файла
Всем привет! Мужики, может есть у кого-то опыт, помогите обмозговать. Собственно есть файл. Размер файла ~ 150 GB. Можно ли из...

Как увеличить размер загружаемого файла более чем 100М ?
До 5 гигов?!

Как получить значение нужных элементов из очень большого xml файла?
Добрый день, Файл загружается по url ссылке, далее много вложенных листов и в одном из листов есть буквально записей 50 нужных мне....

Получить размер файла
Подскаите пожалуйста, как можно получить размер файла ? Дело в том что я пишу шифратор... хочу отображать прогресс шифрования)) а то он...

Получить размер файла
Добрый день коллеги! Не искушен в программировании, но хочу понять логику работы, учитывая что прочитал FAQ и ответы форумчан, все равно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru