Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Определение размера файла

496
02 июня 2004 года
Jes
81 / / 28.03.2003
Приветствую всех...Народ подскажите как определить размер файла в битах(байтах), например открываем файл через ОpenDialog, и когда выбрали файл - в Label'e появился его размер...Если можно участок кода привести, буду очень благодарен....

За ранее спасибо........
4
02 июня 2004 года
mike
3.7K / / 01.10.2002
Цитата:
Originally posted by Jes
Приветствую всех...Народ подскажите как определить размер файла в битах(байтах), например открываем файл через ОpenDialog, и когда выбрали файл - в Label'e появился его размер...Если можно участок кода привести, буду очень благодарен....

За ранее спасибо........



Из стандартного хелпа:

Код:
#include <string.h>
#include <stdio.h>
#include <fcntl.h>
#include <io.h>

int main(void)
{
   int handle;
   char buf[11] = "0123456789";

   /* create a file containing 10 bytes */
   handle = open("DUMMY.FIL", O_CREAT);
   write(handle, buf, strlen(buf));

   /* display the size of the file */
   printf("file length in bytes: %ld\n", filelength(handle));

   /* close the file */
   close(handle);
   return 0;
}


и еще

Код:
long filesize(FILE *stream)
{
   long curpos, length;

   curpos = ftell(stream);
   fseek(stream, 0L, SEEK_END);
   length = ftell(stream);
   fseek(stream, curpos, SEEK_SET);
   return length;

}


Так что RTFM !!!
293
02 июня 2004 года
SEDEGOFF
586 / / 06.10.2002
Ну или так
#include <sys\stat.h>
#include <stdio.h> //точно не помню на счет этот include
....
struct stat statbuf;
stat(OpenDialog1->FileName.c_str(), &statbuf);
Label1->Caption = IntToStr(statbuf.st_size);
7.4K
02 июня 2004 года
burashka
12 / / 02.06.2004
если я всё прально понял то есть ещё вариант такой:
если уж опендайлог - значит вкль, если вкль, то я б сделал так:
TFileStream * FS=new TFileStream(OpenDialog1->FileName,fsRead);
LabelOfFileSize->Text=FS->Seek(0,soFromEnd);
496
03 июня 2004 года
Jes
81 / / 28.03.2003
Спасибо пацаны....помогли мне...;)
272
03 июня 2004 года
vladsoft
512 / / 20.08.2000
Цитата:
Originally posted by Jes
Спасибо пацаны....помогли мне...;)


еще не плохо бы было контрольную сумму считать.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог