Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
n971030
152 / 99 / 1
Регистрация: 23.01.2010
Сообщений: 1,317
#1

Клиим несколько файлов в одлин и обратно - C++

07.02.2012, 00:32. Просмотров 1054. Ответов 13
Метки нет (Все метки)

Дайте совет как склеить несколько файлов в один а потом расклеить. Ну например как это делает винрар. ?? дайте совет как правильно кто поопытнее?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2012, 00:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Клиим несколько файлов в одлин и обратно (C++):

Преобразование текстовых файлов из кодировки DOS в кодировку Windows и обратно - C++
Программа преобразования текстовых файлов из кодировки DOS в кодировку Windows и обратно.

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

Разделение mp4 на несколько файлов - C++
Есть mp4 файл в кодеке h264, сформированный по трем разным каналам. Нужно по имеющемуся файлу сформировать три, соответственно каждому...

Разделение кода на несколько файлов - C++
• Имеем основной cpp файл с main. • Имеем код некоторых нужных функций • Есть указание реализовать эти функции не в основном cpp, а в...

Разделить программу на несколько файлов - C++
Прошу помощи в решение , как правильно разделить программу на на класс с его функциями и отдельно функцию входа #include<iostream> ...

Открыть несколько разных файлов - C++
Добрый вечер. Не могу разобраться с проблемой. Нужно открыть несколько файлов text, где i цифра от 1 до n (text1, text2, text3 и т.д.)....

13
kravam
быдлокодер
1704 / 891 / 45
Регистрация: 04.06.2008
Сообщений: 5,508
07.02.2012, 00:49 #2
Ну если ты хочешь именно как winrar. то должен знать, что он их в первую очередь СЖИМАЕТ. То есть если тебя интересует сжатие- это один вопрос, если именно конкатенация- это второй вопрос, если и то и другое- третий вопрос. Ну вот если тебе надо сжимать файлы, попробуй сжать хотя бы один файл. Для этого изучи какие-нибудь алгоритмы или свой придумай.

Идея достойная, хотя практической пользы ноль. Есть winrar, есть 7zFM, когда вникнешь в проблему, поймёшь, что там выше головы не прыгнешь.

В основе сжатия лежит тот факт, что в файле присутствуют повторяющиеся группы байт, например:
22 22 22 22 22 22 22 22 22 22 22 22 22

Если предположить, что эта цепочка находится по адресу x, тогда всю эту свадьюбу можно зашифровать, к примеру так:
x 13 22

Что будет означать: по адреcу x лежит цепочка из 13-байт, каждый из которых равен 22
Ну вот как-то так.

Давно-давно я слепил архиватор, который работал только с одними символами- нулями там или единицами или двойками. Так, чисто для себя, чтобы знать и иметь моральное право умничать на форуме!
0
zago-vlad
13 / 8 / 1
Регистрация: 12.01.2010
Сообщений: 106
07.02.2012, 02:15 #3
Цитата Сообщение от n971030 Посмотреть сообщение
склеить несколько файлов в один а потом расклеить
А ты будешь клеить бинарники или текстовые файлы? С текстовыми все просто, можно, например, склеить их в файл вот такой структуры:

Код
[!myfile1.txt_begin]
... здесь содержание файла myfile1.txt ...
[!myfile1.txt_end]

[!file2.txt_begin]
... здесь содержание файла file2.txt ...
[!file2.txt_end]
Только работать с бинарниками это не будет.
Для текстовых достаточно просто написать прогу, которая будет создавать файл вышеописаной структуры, а потом будет его разпарсивать на отдельные файлы.
Если файл содержит символ '[' или ']', то лучше заменяй их на \[ и \], а при декодировании вернешь обратно ([!имя_файла_begin] и [!имя_файла_end] - это служебные строки), если этого не сделать, а в одном из входных файлов вдруг будет что-то типа [!123.txt_begin], то прога будет работ некоректно.
0
NoMasters
Псевдослучайный
1899 / 1110 / 74
Регистрация: 13.09.2011
Сообщений: 3,158
07.02.2012, 10:58 #4
Цитата Сообщение от zago-vlad Посмотреть сообщение
Если файл содержит символ '[' или ']', то лучше заменяй их на \[ и \],
И проходиться при сборке/разборке по всем файлам неизвестной длинны? Не хотеть! Лучше всего не велосипедить, а взять обычный tar.
0
taras atavin
3883 / 1757 / 92
Регистрация: 24.11.2009
Сообщений: 27,566
07.02.2012, 11:04 #5
Врядли здесь найдётся хоть кто то, умеющий клиить вообще, тем более клиить обратно.
0
ForEveR
В астрале
Эксперт С++
7988 / 4747 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
07.02.2012, 11:13 #6
zlib можешь заюзать вообщем-то.
0
kravam
быдлокодер
1704 / 891 / 45
Регистрация: 04.06.2008
Сообщений: 5,508
07.02.2012, 11:22 #7
Цитата Сообщение от taras atavin Посмотреть сообщение
Врядли здесь найдётся хоть кто то, умеющий клиить вообще, тем более клиить обратно.
Нет, ну почему же... Я в своё время написал джойнер и нормальный такой джойнер, смею думать...
0
AzaKendler
214 / 116 / 9
Регистрация: 30.05.2011
Сообщений: 1,772
07.02.2012, 11:43 #8
kravam, выложи. например в бету
0
kravam
быдлокодер
1704 / 891 / 45
Регистрация: 04.06.2008
Сообщений: 5,508
07.02.2012, 12:04 #9
Здесь нельзя такое обсуждать
0
AzaKendler
07.02.2012, 12:07
  #10

Не по теме:

kravam, ааааааа) поняаааатно

0
n971030
152 / 99 / 1
Регистрация: 23.01.2010
Сообщений: 1,317
07.02.2012, 12:42  [ТС] #11
Цитата Сообщение от zago-vlad Посмотреть сообщение
А ты був вдруг будет что-то типа [!123.txt_begin], то прога будет работ некоректно.
Я собирлся клеть все как бинарники. Мне тока такой вариант, надо именно самому а не использовать что то где то! задание в универе косвиное такое
0
ForEveR
В астрале
Эксперт С++
7988 / 4747 / 321
Регистрация: 24.06.2010
Сообщений: 10,547
Завершенные тесты: 3
07.02.2012, 15:17 #12
n971030, Либо сохранять размеры файлов, которые клеим. Либо вставлять некий хедер перед началом каждого файла.
0
n971030
152 / 99 / 1
Регистрация: 23.01.2010
Сообщений: 1,317
07.02.2012, 23:26  [ТС] #13
Цитата Сообщение от ForEveR Посмотреть сообщение
n971030, Либо сохранять размеры файлов, которые клеим. Либо вставлять некий хедер перед началом каждого файла.
я прикинул такую запись
<байт - кол-во символов в строке> <строка с именем файла> <размер файла в байтах> <файл>
короче также для каждого файла.
0
easybudda
Модератор
Эксперт CЭксперт С++
9917 / 5840 / 975
Регистрация: 25.07.2009
Сообщений: 11,014
07.02.2012, 23:38 #14
Цитата Сообщение от ForEveR Посмотреть сообщение
Либо вставлять некий хедер перед началом каждого файла.
По-моему лучше в начале склеенного файла сделать заголовок либо постоянной длины (ограничение на количество склеиваемых файлов, за то просто), либо переменной длины, содержащий имена файлов и их смещение от начала общего файла...
0
07.02.2012, 23:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.02.2012, 23:38
Привет! Вот еще темы с ответами:

Непонятная ошибка. Несколько файлов - C++
один header подключаем в другой(у которого есть .cpp файл) и возникает ошибка! play1.h struct card { int...

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

Разбить код на несколько файлов - C++
Помогите разложить код по файлах. Rect.h Rect.cpp main.cpp #include &lt;iostream&gt; using namespace std; namespace cf{

Несколько cpp файлов в проекте - C++
Доброго времени суток ! Есть проект и в нем 2 cpp файла: Main.cpp и BinaryNumber.cpp В последнем файле создан класс и его методы....


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

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