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

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

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

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

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

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

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

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

Работа с большими числами - C++
Подскажиье, пожалуйста, как работать с большими числами. Допустим у меня есть число...

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

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

Работа с файлами С++ - C++
Есть некий кусок кода, который должен с читать первое значение из файла, увеличить его и затем обратно записать его в файл. int co=0; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
15.05.2013, 17:18 #2
Цитата Сообщение от masikus Посмотреть сообщение
Как в c/c++ работать с большими файлами?
А точнее нужно открывать файлы размером больше 10 ГБ и работать с ними.
В чем проблема? Работать с частью файла или же маппить его.
quwy
Native x86
3169 / 2017 / 535
Регистрация: 13.02.2013
Сообщений: 6,743
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
3169 / 2017 / 535
Регистрация: 13.02.2013
Сообщений: 6,743
16.05.2013, 05:41 #5
Цитата Сообщение от masikus Посмотреть сообщение
Можете показать пример работы с файлом по частЯм и выделением памяти под это
Странный вопрос. Открываете десятигиговый файл как обычно, читаете первые, скажем, 1024 килобайта, обрабатываете как вам нужно, читаете следующие 1024 килобайта, снова обрабатываете, и так, пока не достигли конца файла.
Uncle_Vitok
0 / 0 / 0
Регистрация: 11.02.2013
Сообщений: 36
05.03.2016, 18:09 #6
а можно пример кода?
Croessmah
Модератор
Эксперт CЭксперт С++
13133 / 7396 / 828
Регистрация: 27.09.2012
Сообщений: 18,227
Записей в блоге: 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 Гб.
Подвох?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.03.2016, 01:03
Привет! Вот еще темы с ответами:

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

Работа с файлами в C++ - C++
Створити текстовий файл. Слова у файлі відділені пробілами, си-мволами "," та ";". Переписати в новий текстовий файл рядки вихідного...

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

Работа с файлами - C++
Обработку символьной строки оформить в виде функции. Сканирование строки и доступк её элементам выполнить ТОЛЬКО сиспользованием команд...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
06.03.2016, 01:03
Ответ Создать тему
Опции темы

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