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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.90
masikus
2 / 2 / 0
Регистрация: 03.03.2013
Сообщений: 37
#1

Работа с большими файлами - C++

15.05.2013, 17:11. Просмотров 1355. Ответов 6
Метки нет (Все метки)

Как в c/c++ работать с большими файлами?
А точнее нужно открывать файлы размером больше 10 ГБ и работать с ними.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.05.2013, 17:11     Работа с большими файлами
Посмотрите здесь:

Работа с очень большими файлами - C++
Читающим этот пост просветления и благ! Не знает ли никто из присутствующих здесь и не будет ли любезен подсказать каким образом можно...

работа с большими текстовыми файлами - C++
Здраствуйте, пишу загрузчик *.obj моделей, проблема в следующем, когда загружаю простую модель такую как куб, пирамиду все работает отлично...

Работа с большими числами (массивы) - C++
Подскажите плз как мона выполнить умножение и деление чисел с большими значениями хранящихся я так думаю в массивах. пример:...

Задача простая, но надо её записать хорошо. Работа с большими числами - C++
http://ipc.susu.ac.ru/210-2.html?problem=1500 - сама задача #include <iostream> #include <cmath> typedef long double dob; using...

работа с файлами - C++
Здравствуйте! Мне надо написать программу которая будет: Каждую минуту/две/десять/двадцать проверять файл на изменения. Если изменения...

Работа с файлами - C++
1) Преобразовать строку, заменяя каждую цифру соответствующим ей числом символов нижнего подчеркивания. Например: «3 слона» -> «_ _ _слона»...

Работа с файлами - C++
Нужно написать программу создания алфавита по заданному тексту, который должен считываться из файла, и посчитать частоту встречаемости...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
15.05.2013, 17:18     Работа с большими файлами #2
Цитата Сообщение от masikus Посмотреть сообщение
Как в c/c++ работать с большими файлами?
А точнее нужно открывать файлы размером больше 10 ГБ и работать с ними.
В чем проблема? Работать с частью файла или же маппить его.
quwy
Native x86
3085 / 1933 / 511
Регистрация: 13.02.2013
Сообщений: 6,440
15.05.2013, 17:28     Работа с большими файлами #3
Цитата Сообщение от masikus Посмотреть сообщение
Как в c/c++ работать с большими файлами?
А точнее нужно открывать файлы размером больше 10 ГБ и работать с ними.
Точно, так же, как и со всеми другими файлами. Вы же не имеете привычки всегда считывать весь файл в память для работы с ним?
masikus
2 / 2 / 0
Регистрация: 03.03.2013
Сообщений: 37
16.05.2013, 05:25  [ТС]     Работа с большими файлами #4
Можете показать пример работы с файлом по частЯм и выделением памяти под это
quwy
Native x86
3085 / 1933 / 511
Регистрация: 13.02.2013
Сообщений: 6,440
16.05.2013, 05:41     Работа с большими файлами #5
Цитата Сообщение от masikus Посмотреть сообщение
Можете показать пример работы с файлом по частЯм и выделением памяти под это
Странный вопрос. Открываете десятигиговый файл как обычно, читаете первые, скажем, 1024 килобайта, обрабатываете как вам нужно, читаете следующие 1024 килобайта, снова обрабатываете, и так, пока не достигли конца файла.
Uncle_Vitok
0 / 0 / 0
Регистрация: 11.02.2013
Сообщений: 36
05.03.2016, 18:09     Работа с большими файлами #6
а можно пример кода?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.03.2016, 01:03     Работа с большими файлами
Еще ссылки по теме:

Работа с файлами - C++
Через #include подключить 2 файла которые уже существуют и затем вызвать их программой. Кто может бросить код?

Работа с файлами - C++
#include <iostream> #include <fstream> #include <stdio.h> #include <string.h> using namespace std; struct man //...

работа с файлами - C++
Здравствуйте. Хотел бы получить небольшую помощь Задача есть конфиг в котором написаны ip-адреса на разных строчках пример: ... ...

Работа с файлами - C++
Дан файл расширения .txt, в котором имеется список вида: 1. Фамилия1 2. Фамилия2 Как произвести чтение из файла, для поиска нужной...

работа с файлами - C++
Помагите пожалуйсто доделать прогу. В справочной автовокзала хранится расписание движения автобусов. Для каждого рейса указаны: -номер...


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

Или воспользуйтесь поиском по форуму:
Croessmah
Модератор
Эксперт CЭксперт С++
12980 / 7292 / 812
Регистрация: 27.09.2012
Сообщений: 18,007
Записей в блоге: 3
Завершенные тесты: 1
06.03.2016, 01:03     Работа с большими файлами #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    std::string get_full_sum(const std::string& file_path, CHECKSUM_TYPE sum_type, size_t block_size)
    {
        Glib::Checksum sum(convert_to_glibmm_checksub_type(sum_type));
        std::ifstream file(file_path, std::ios::binary);
        if( file.is_open() ){            
            std::string buffer;
            buffer.resize(block_size);
            do{
                file.read(&(buffer[0]), block_size);
                buffer.resize(file.gcount());
                sum.update(buffer);
            }while(buffer.size()>0);
        }
        return sum.get_string();
    }
Проверено на файле в 32 Гб.
Подвох?
Yandex
Объявления
06.03.2016, 01:03     Работа с большими файлами
Ответ Создать тему
Опции темы

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