Склеивание и разбивка файлов!

12 3
[Удален]
3521

Имеем, к примеру 10 файлов txt c различными названиями( к примеру 1.txt, 2.txt,3.txt,4.txt,5.txt и т.д.) . Указываем скрипту папку с этими файлами, и он все файлы последовательно склеивает. Получаем один файл, который можно редактировать. После редактирования обратно разбиваем эти файл на соответсвующие (1.txt, 2.txt,3.txt,4.txt,5.txt)

Почти добился нужного результата если архивировать файлы в формате .tar , но после каких-либо изменений в тексте файла архиватор пишет что архив стал битый!

Вообщем подскажите как можно решить задачу!

S2
На сайте с 07.01.2008
Offline
611
#1

Информацию для восстановления, при создании архива не пробовали дописывать?

А зачем вам изменять текст в архиве - распакуйте и изменяйте. Или попробуйте без непрерывного архива обойтись.

Не надо приписывать мне свои выводы, я имею ввиду только то, что написал. Лучшая партнёрка по футболкам/толстовкам (http://partnerka.kolorado.ru/?ref=1921540) Опрос: Проверить текст на уник - как? (/ru/forum/495885)
Shtogrin
На сайте с 02.11.2006
Offline
95
#2
SERGIOSAN:

Почти добился нужного результата если архивировать файлы в формате .tar , но после каких-либо изменений в тексте файла архиватор пишет что архив стал битый!
Вообщем подскажите как можно решить задачу!

Текст меняется в .tar файле?!

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

www.shtogrin.com (http://www.shtogrin.com/). Канцтовары (http://www.invit.com.ua/). 1С Бухгалтерия (http://account.kiev.ua/).
[Удален]
#3
Str256:
Информацию для восстановления, при создании архива не пробовали дописывать?

Поподробней об этом как и где эта информация прописывается?

SERGIOSAN добавил 23.08.2008 в 16:22

Shtogrin:
Текст меняется в .tar файле?!
Можно использовать какой-то уникальный разделитель при склейке, содержащий имя файла, который не должен редактироваться, потом разбивать по этой же строке.

Да меняю в .tar файле. Открываю этот файл с помощью текстового редактора и редактирую, после этого архив не распознается, хотя метки не трогаю, которые

архиватор делает!

SERGIOSAN добавил 23.08.2008 в 16:26

Str256:

А зачем вам изменять текст в архиве - распакуйте и изменяйте. Или попробуйте без непрерывного архива обойтись.

Смысл как раз в том чтобы из этих файлов сделать один его отредактировать и потом опять сделать те же 10 файлов, но отредактированных.

S2
На сайте с 07.01.2008
Offline
611
#4
SERGIOSAN:
Поподробней об этом как и где эта информация прописывается?

Как проверить вашу ошибку даже и не знаю:) Сделал архив .rar (5% для восстановления) изменил расширение на .tar

Кинул внутрь текстовый локумент - закрыл архив. Открыл архив - открыл текстовый документ - стёр в нём пару строчек - сохранил - закрыл архив - снова открыл - всё открывается. Тоже самое, только архив .tar создал сразу с помощью Тотал Коммандер, тоже ок.

SERGIOSAN:
Да меняю в .tar файле. Открываю этот файл с помощью текстового редактора и редактирую, после этого архив не распознается, хотя метки не трогаю, которые
архиватор делает!

Аааа, понял - вы открываете сам тар-архив блокнотом. Ну, а чего вы хотели - метки изменяются, при изменении содержимого, надо в них тоже вносить изменения. Открывайте внешним распаковщиком, а потом уже что хотите.

[Удален]
#5

Наверное я все таки немного не понял вас!

Мне нужно из нескольких фалов получить один, отредактировать его в текстовом редакторе, и потом опять из этого одного сделать файлы с теми же названиями, но отредактированные уже!

Что значит " открывать внешним распаковщиком" winrar-ом к примеру? Открыл-при открытие показываются все файлы по отдельности, а нужно чтобы один был!

Объясните , пожалуйста, наиболее доходчиво!:)

S2
На сайте с 07.01.2008
Offline
611
#6

Я имею ввиду, чтобы ваш скрипт запускал распаковщик, потом открывал файлы .txt в блокноте, начинал работать с содержимым, как вы это делаете сейчас, после сохранения изменений закрывал распаковщик. Скрипт распаковки, типо такого http://www.inet-service.ru/forum/viewtopic.php?t=32&sid=43dbee31ae6f5693ee945dc8aff0dcd8 В инете много подобного найти можно.

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

[Удален]
#7

вообщем давайте еще раз! Начну сначала ,есть к примеру 10 фалов .txt из них нужно сделать один. Потом этот один файл отредактировать и потом опять разбить этот один файл на исходные 10 файлов.

Как это можно сделать?

C
На сайте с 20.09.2007
Offline
114
#8

Открыть каждый файл, в конце поставить, например, ~~~, закрыть, сохранить.

Открыть каждый файл, все скопировать в один, сохранить.

Открыть общий, отредактировать, закрыть.

Открыть общий и на основе порядка метки ~~~ разбить на куски.

Как это можно сделать?

Написать на том же php скрипт.

ИМХО, самые лучшие VDS: https://cp.inferno.name/aff.php?aff=4048
[Удален]
#9

Ну порядок мне вообщем был понятен, но скрипт который все это делает написать не смогу, поэтому и спрашиваю!

мне кажется этот скрипт не сложен впринципе, поэтому если кто напишет код буду премного благодарен!

W
На сайте с 03.07.2007
Offline
36
#10


$dir = 'files'; //Директория с файлами
$array = array();
if ($handle = opendir($dir)) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
$filek = $dir."/".$file;
$str = file_get_contents($filek);
$array[] = $str;
}
}
closedir($handle);
}
$separate_string = join("---------------------------", $array);
echo $separate_string;//Объедененная строка.

Что то вроде этого можно :)

Лучшая веб студия Максимаф.ру (http://maksimaf.ru) ICQ : 464-338-997 MAil: wispoz@inbox.ru Телефон: 8(915) 368-45-93
12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий