Есть приложение на Qt представляющее из себя форму с текстовыми и числовыми полями, а так же возможностью загружать вложения (картинки, пдф и иные файлы весом до 500МБ и по сути не ограниченного количества).
Сейчас данные из формы сохраняются в JSON (бинарное представление Qt) и нужно ко всему этому сохранить вложения.
Думал сохранять данные формы в один файл, а вложения "вливать" во второй файл, прописывая в первом файле в соответствующих вложениям полям offset этого вложения из второго файла.
Таким образом (в сравнении с данными и вложениями в едином файле) при пересохранении текста, если его объем будет увеличен, не придется создавать новый файл и копировать туда все вложения, коих может быть вплоть до пары гигабайт, но два файла вместо одного видится мне не практичным (пользователь захочет записать файл на флешку и забудет "базу" вложений и тю-тю).
Как лучше сохранять всё это? Иметь два файла для единой сущности не представляется мне "красивым". Нормально ли что при каждом сохранении будет создаваться временный файл, в него писаться данные и копироваться все вложения ("шерстеть" диском на пару гигов каждый раз по-моему не "культурно")?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Я знаю, что в стандарте C++ 14 возможно использовать ключевое слово auto при указании типа аргумента
Программа хорошо работает (secret != guess) почему знак != (не ровен) меняет свое предназначение ведь в программе по логике сгенерированое число нужно...
Какие бывают причины возникновения ошибки и как их решить? Пробавала подключить #include "vclh" проблемы не решило
Есть следующий скрипт изменяющий ширину определенных блоков на странице по большему: