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

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

Войти
Регистрация
Восстановить пароль
 
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,910
Записей в блоге: 1
#1

Не правильно показывает размер файла - C++

08.02.2012, 19:01. Просмотров 625. Ответов 6
Метки нет (Все метки)

Написал программу которая должна показывать размер файла:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
  string name;
  cout << "Введите имя файла, и его место расположение(C:\1.txt):  " << endl;
  cin >> name;
  ifstream f(name.c_str());
  cout << "Размер файла: " << f.tellg();  
 
system("pause");
return 0;
}
Но почему-то файл висит 11 кб, а программа показует только 0 кб
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.02.2012, 19:01     Не правильно показывает размер файла
Посмотрите здесь:

Узнать размер файла C++
C++ размер файла
Размер файла... C++
Размер файла в байтах C++
Размер файла C++
C++ Размер файла с текстом
C++ Посчитать размер файла
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
soon
2537 / 1302 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
08.02.2012, 19:15     Не правильно показывает размер файла #2
Get position of the get pointer.
Читать эту строку до просветления.
Том Ардер
Модератор
Эксперт по математике/физике
3704 / 2317 / 286
Регистрация: 15.06.2009
Сообщений: 4,098
08.02.2012, 19:17     Не правильно показывает размер файла #3
Правильно показывает 0: текущая позиция чтения после открытия файла.

А надо так:

#include <iomanip>;

....................

f.seekg( 0, ios::end ); // перемещение к концу файла
cout << "size = " << f.tellg();
rangerx
1931 / 1540 / 141
Регистрация: 31.05.2009
Сообщений: 2,905
08.02.2012, 19:20     Не правильно показывает размер файла #4
При открытии переведи курсор в конец файла
C++
1
ifstream f(name.c_str(), ios::ate);
либо воспользуйся методом seekg
C++
1
f.seekg(0, ios::end);
Wanderer1
23 / 23 / 4
Регистрация: 26.03.2011
Сообщений: 54
08.02.2012, 19:25     Не правильно показывает размер файла #5
мне кажется в строке
Цитата Сообщение от Sylar9 Посмотреть сообщение
cout << "Введите имя файла, и его место расположение(C:\1.txt): " << endl;
вместо \1 должно быть \\1
и не забудь перевести курсор в конец файла как говорит rangerx
Sylar9
-20 / 55 / 2
Регистрация: 04.09.2011
Сообщений: 1,910
Записей в блоге: 1
08.02.2012, 19:30  [ТС]     Не правильно показывает размер файла #6
Цитата Сообщение от rangerx Посмотреть сообщение
При открытии переведи курсор в конец файла
C++
1
ifstream f(name.c_str(), ios::ate);
либо воспользуйся методом seekg
C++
1
f.seekg(0, ios::end);
а как в килобайты перевести ?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.02.2012, 19:42     Не правильно показывает размер файла
Еще ссылки по теме:

приложение не правильно сортирует из-за чего показывает не корректные результаты C++
Размер файла C++
Sizeof: как правильно найти размер авторского типа? C++
Программа правильно сохраняет, но не правильно считывает матрицу из файла C++
Показывает ошибки: cout и cin не подключает, непредвиденный конец файла C++

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

Или воспользуйтесь поиском по форуму:
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
08.02.2012, 19:42     Не правильно показывает размер файла #7
Sylar9, разделить на 1024
Yandex
Объявления
08.02.2012, 19:42     Не правильно показывает размер файла
Ответ Создать тему
Опции темы

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