Войти
ПрограммированиеФорумОбщее

Упаковать файлы в единый

#0
16:12, 27 апр 2014

Есть пару файлов собственного формата, по идейным соображения не очень хотелось бы их данные объединять вместе. Но в файловой системе хочу один файл. Тоесть, банально есть 4 файла:
f1.txt
1 2 3 4 5 6 7 8

f2.txt
a b c d e f g

f3.txt
One Two Three Four Five

f4.txt
^%&*%&^%&*%^

В итоге хочу видеть один файл за место всех, то есть:
file.bin

В программе хочу тоже всего один файл загружать:

file.load("C:/file.bin");

Но дальше как-то разделить эти все файлы внутренне, и уже там обращаться к ним по каким либо алиасам или ещё как:

file.load("C:/file.bin");
file.parse("f1.txt", &file1);
file.parse("f2.txt", &file2);
file.parse("f3.txt", &file3);
file.parse("f4.txt", &file4);

Нечто подобное. Есть какие нибудь бесплатные библиотеки? Я вот подумываю zlib, но никоггда не использовал её. Мне нужна скорость, т.к. данные в этих файлах будут обновляться.

#1
16:40, 27 апр 2014

Если будут обновляться данные то зип тебе плохо поможет. Нужно серьёзное решение типа базы данных или хранилища с дописыванием в конец и опциональной перепаковкой растущих файлов.
Для твоего хеллоу-ворлда явно слишком тяжёлое решение.
Либо соединяй в зип и считай что писать в файлы нельзя, либо не соединяй, оставь их на диске открытыми и тогда модифицируй их как хочешь.

#2
17:13, 27 апр 2014

Nawy
> Есть какие нибудь бесплатные библиотеки?
Библиотеки есть, но задача противоречит здравому смыслу в случае четырёх файлов. Такие базы упаковывают вдоль главной оси, причём бывает, что по нескольку раз. Без созерцания полной структуры занятие почти бессмысленное.

ПрограммированиеФорумОбщее

Тема в архиве.