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

Метод определяющий размер файла

18.05.2010, 12:11. Показов 1592. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день, возник такой вопрос - есть ли у CFileDialog метод, подсчитывающий размер файла в байтах?

Открываем текстовый файл:

C++
1
2
3
4
5
6
CFileDialog OpenAndRead(TRUE,(LPCTSTR)".txt",NULL,
OFN_HIDEREADONLY,(LPCTSTR)" Text Files (*.txt) |*.txt||");
...
OpenAndRead.DoModal();      
    CString file_name=OpenAndRead.GetPathName();
    nam_e=CreateFile(file_name,GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,0,NULL);
и нужно определить его длину. Есть метод GetLength, но он относится к классу CFile, а у нас объект OpenAndRead класса CFileDialog. Как быть?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.05.2010, 12:11
Ответы с готовыми решениями:

java script, определяющий размер экрана
Добрый день, уважаемые форумчане! У меня на сайте все сделано одним флэш-объектом, резиновый дизайн к которому применить на данном этапе...

Метод SaveCopyAs увеличивает размер файла. Как исправить?
В Excel VBA тиражирую файл для разных пользователей, соответственно для каждого изменяю значение некоторых ячеек и для объекта...

Метод, который возвращает размер файла в удобном для человека виде
Привет! Есть ли в .НЕТ уже готовый метод, который бы преобразовывал FileInfo.Length, который возвращает размер в байтах, в удобный для...

4
 Аватар для Manjak
270 / 176 / 46
Регистрация: 12.03.2010
Сообщений: 494
18.05.2010, 12:21 2
Открывать файл не нужно, достаточно воспользоваться _stat
1
4 / 4 / 0
Регистрация: 03.01.2009
Сообщений: 50
18.05.2010, 14:04  [ТС] 3
Спасибо, а если выбираем файл и определяем его размер таким образом, то что указать fstat(handle,buffer) как первый параметр?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include<sys\stat.h>
...
HANDLE nam_e;
struct stat statbuf;
...
CFileDialog OpenAndRead(TRUE,(LPCTSTR)".txt",NULL,OFN_HIDEREADONLY,(LPCTSTR)" Text Files (*.txt) |*.txt||");
...
OpenAndRead.DoModal();          
CString file_name=OpenAndRead.GetPathName();
nam_e=CreateFile(file_name,GENERIC_READ,FILE_SHARE_READ,NULL,OPEN_EXISTING,0,NULL);
ReadFile(nam_e, mass_text,1000, &n,NULL);//открывали для заполнения массива
...
/* получить информацию о файле */
fstat (...,&statbuf);
printf("Размер в байтах: %ld\n",statbuf.st_size);
0
Эксперт С++
2924 / 1274 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
18.05.2010, 18:57 4
Ну, если уж у тебя в ходу CString, CFileDialog и прочее - что мешает использовать CFile::GetStatus ?
C++
1
2
3
4
5
6
7
8
9
10
CFileStatus fs;
if (CFile::GetStatus(filename, fs))
{
    ULONGLONG len = fs.m_size;
    // .... твой код .....
}
else
{
    // файл не существует или недоступен, обработать ошибку....
}
1
4 / 4 / 0
Регистрация: 03.01.2009
Сообщений: 50
19.05.2010, 09:46  [ТС] 5
О, класс! спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.05.2010, 09:46
Помогаю со студенческими работами здесь

Метод, определяющий элемент, кратный 17
10. Задан числовой массив, состоящий из n элементов (n&lt;=100). Написать метод, определяющий, есть ли среди элементов с нечетными номерами...

Написать метод, определяющий, делится ли введенное число на 2, 5, 3, 6, 9
Напишите метод, который будет определять: Делится ли введенное число на 2,5,3,6,9.

Составить метод, определяющий, являются ли слова анаграммами
Пожалуйста помогите решить: Объявить метод Anagr(w1, w2), который получает два слова и возвращает true, если слова являются анаграммами...

Написать метод, определяющий, является ли массив палиндромом
Написать класс с методом определяющий, является ли массив палиндромом (Одинаково читается справа и слева). Пример: 1234321

Метод, определяющий, сколько времени прошло с заданной даты
Необходимо спроектировать и разработать метод, определяющий, сколько времени прошло с заданной даты. С помощью этого методы выведите в...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему

Редактор формул (кликните на картинку в правом углу, чтобы закрыть)
Новые блоги и статьи
Winforstrap или красявый дизайн своими руками на HTML+JS+Winform­s
anomal6 04.03.2025
Сидел тут вечером ковырял проект на MAUI, и как же глупо создаются пакеты MSIX и система обновлений пакета публикации, но не об этом. Бывает нужен современный дизайн программы а писать на MAUI,. . .
Формат данных для симуляции физики, посредством распространённы­­­­­­­х не обученных моделей.
Hrethgir 04.03.2025
Что-то как-то снова потерялось, зато катангенсы закатангесились в одном сообщении. На днях писал, что планирую для работы апгрейдить (на этот раз удачно) девайс для работы (конкретно - здоровья для,. . .
Концепция variadic
CoderHuligan 04.03.2025
Мне не очень нравится (а кому это нравится?) что у нас есть отдельно компилятор, отдельно линковщик, причем со своим собственным командным языком. При этом усложнении надо знать помимо языка. . .
Java Record или Kotlin Data Class: что лучше для неизменяемых данных
Wired 04.03.2025
Java Record и Kotlin Data Class — два мощных инструмента для обуздания неизменяемых структур данных, каждый со своим уникальным подходом к решению этой задачи. История их появления весьма. . .
Создание производительны­­­х API с Java и gRPC
Wired 04.03.2025
В мире микросервисной разработки вопрос производительности часто становится краеугольным камнем. И хотя REST API давно завоевал сердца разработчиков своей простотой и интуитивностью, при высоких. . .
Что нового в JDK 24
Wired 04.03.2025
JDK 24 — это настоящий прорыв в эволюции Java, который кардинально меняет правила игры. В этом релизе разработчики Oracle наконец-то довели до ума множество критически важных улучшений в. . .
Разработка блокчейн с использованием Java: смарт-контракты и dApp
Wired 04.03.2025
Погружаясь в мир блокчейн-разработки на Java, разработчик получает доступ к внушительному арсеналу инструментов. В отличие от Solidity, который "заперт" в экосистеме Ethereum, Java предоставляет. . .
WebAssembly в Kubernetes
stackOverflow 03.03.2025
В современной экосистеме облачных технологий WebAssembly (Wasm) становится все более значимым компонентом, предлагая уникальный подход к выполнению кода в распределенных системах. Эта технология. . .
GitHub Actions или Jenkins: Выбираем CI/CD платформу
stackOverflow 03.03.2025
Непрерывная интеграция и развертывание (CI/ CD) изменили подход к разработке программного обеспечения, превратив его в бесшовный процесс от написания кода до развертывания в продакшн. GitHub Actions и. . .
Автоматизация тестирования Pull Request в Kubernetes: Интеграция с GitHub Actions и GKE
stackOverflow 03.03.2025
Масштабные проекты с использованием Kubernetes требуют надежной системы тестирования изменений перед их внедрением в продакшн-среду. Традиционный подход с ручной проверкой Pull Request не справляется. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru