Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/9: Рейтинг темы: голосов - 9, средняя оценка - 5.00
 Аватар для TrollHammer
1216 / 709 / 336
Регистрация: 22.02.2018
Сообщений: 2,095
Записей в блоге: 2

Альтернатива TStringList (проблемы с загрузкой большого кол-ва строк)

29.05.2019, 10:23. Показов 1836. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Столкнулся с такой проблемой: есть конвертер координат из системы в систему, на вход подается текстовый файл, обрабатывается и сохраняется.
C++
1
2
3
4
5
6
7
8
9
10
11
12
    TStringList *l = new TStringList;
 
      if(OpenDialog->Execute())
     {
         l->LoadFromFile(OpenDialog->FileName);
 
         //обработка
 
        l->SaveToFile(OpenDialog->FileName);
 
     }
   delete l;
Небольшие файлы размером в не более 1000000-2000000 строк нормально загружаются, но сейчас надо обработать файлы гораздо больше (10-15 миллионов строк размером 300-500 МБ). При загрузке такого файла приложение вылетает с ошибкой "Out of memory". Подскажите, пожалуйста, альтернативу для загрузки файла для дальнейшей обработки построчно. Заранее благодарю.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
29.05.2019, 10:23
Ответы с готовыми решениями:

Как узнать кол-во строк в TStringList? (Delphi). И ещё один question внутри^^
Как узнать кол-во строк в TStringList? (Delphi)? И ещё, есть ли аналог TStringList'у, чтобы мог тянуть большие файлы? Заранее спасибо...

Внесение большого кол-ва строк в таблицу, СУБД mysql
Доброго времени суток форумчане, столкнулся с проблемой - необходимо в таблицу внести значения типа: INSERT INTO 'table_name' ( column_1,...

Сделать таблицу n строк: адрес, кол-во проживающих, кол-во комнат и кол-во метров в каждой комнате
В задании нужно сделать таблицу n строк. Адрес, кол-во проживающих, кол-во комнат и кол-во метров в каждой комнате. public class second {...

2
Модератор
 Аватар для D1973
9915 / 6452 / 2455
Регистрация: 21.01.2014
Сообщений: 27,386
Записей в блоге: 3
29.05.2019, 11:10
Лучший ответ Сообщение было отмечено TrollHammer как решение

Решение

TrollHammer, попробуйте TStreamReader
или вот достаточно близкая тема...
1
 Аватар для TrollHammer
1216 / 709 / 336
Регистрация: 22.02.2018
Сообщений: 2,095
Записей в блоге: 2
29.05.2019, 14:14  [ТС]
D1973, Спасибо огромное Вам и Volvo
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.05.2019, 14:14
Помогаю со студенческими работами здесь

Загрузить N кол-во файлов в TStringList
Как правильно реализовать следующее: var list: TStringList; begin list:=TStringList.Create; for i:=0 to...

В матрице переставиь 2 средних строки,если кол-во строк четное, первую со средней, если кол-во строк нечетное
Дан массив размером n*n, элементы которого-целые числа. Поменять местами 2 средних строки,если кол-во строк четное,и первую со средней...

Альтернатива AsyncTask для загрузки большого объёма данных
В литературе и статьях в Интернете для получения данных из сети рекомендуется использовать AsyncTask внутри Activity. Если объём...

Проблемы с TStringList.Find()
Всем доброго времени суток, уважаемые форумчане. Имеется проблема такого рода: {...} const dow:array of string =...

Добавление строк в TStringList и нахождение количества одинаковых строк
Задача такова: 1) Добавить несколько строк с текстом 2) Определить кол-во одинак.строк (при чем для каждой разный подсчет: т.е, есть...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru