Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
valdi_korot
50 / 50 / 17
Регистрация: 04.03.2014
Сообщений: 430
Завершенные тесты: 1
#1

Как узнать размер открытого файла - C++

24.09.2014, 13:39. Просмотров 1006. Ответов 1
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <fstream>
#include <windows.h>
#include <cstdlib>
#include <stdio.h>
using namespace std;
   
   void quickSort(int* a, int N);
int main()
{
    ifstream file;
    file.open("array.txt",ios::in);
            //размер
как узнать размер открытого файла ??
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.09.2014, 13:39     Как узнать размер открытого файла
Посмотрите здесь:

Узнать размер файла C++
C++ Как изменить размер открытого для записи файла
Как узнать текущий размер копируемого файла? C++
C++ Узнать размер файла
Как узнать размер массива? C++
Не выходит узнать размер файла C++
C++ Как определить размер открытого файла
Как узнать размер файла? (студия 2013) C++
C++ Как узнать размер массива
Как узнать текущий размер файла, открытого для записи? C++
как узнать размер строки? C++
C++ Узнать размер файла больше 4гб

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
worldown
40 / 40 / 18
Регистрация: 22.06.2009
Сообщений: 146
24.09.2014, 13:59     Как узнать размер открытого файла #2
имхо, через ftell, возвращает объем в байтах. Пример:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/* ftell example : getting size of a file */
#include <stdio.h>
 
int main ()
{
  FILE * pFile;
  long size;
 
  pFile = fopen ("myfile.txt","rb");
  if (pFile==NULL) perror ("Error opening file");
  else
  {
    fseek (pFile, 0, SEEK_END);   //пробежка по файлу
    size=ftell (pFile);
    fclose (pFile);
    printf ("Size of myfile.txt: %ld bytes.\n",size);
  }
  return 0;
}


Добавлено через 9 минут
Хотя в вашем коде реализация идет через поток, то попробуйте так:
C++
1
2
3
4
5
std::ifstream::pos_type filesize(const char* filename)
{
    std::ifstream in(filename, std::ifstream::ate | std::ifstream::binary);
    return in.tellg(); 
}
Yandex
Объявления
24.09.2014, 13:59     Как узнать размер открытого файла
Ответ Создать тему
Опции темы

Текущее время: 22:33. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru