![]() |
Модераторы: ginnie |
![]() ![]() ![]() |
|
gcc |
|
||||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
нужно вставить текст после конкретного абзаца в файле, и чтобы этот текст входил в этот обзац
т.е. как вставить строку после 8 абзаца? === не могу найти, абзацы подсчитать могу, но вставить в этот обзац не получается
Это сообщение отредактировал(а) gcc - 20.11.2009, 21:57 |
||||
|
|||||
DEER |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 749 Регистрация: 12.4.2005 Где: г. Рязань Репутация: нет Всего: 13 |
не подходит? -------------------- |
|||
|
||||
gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
не хочет
==== абзацев штук 20, нужно вставить после 8 абзаца, найти его надо (строки все время добавляються), я его нашел скриптами выше, но вставляет оно перед абзацеи, а после абзаца не хочет, я пытался открыть "бинарно" файл и обработать , но пока не получается вообще-то нужно вставить после 8 абзаца и после 14... Добавлено через 44 секунды в гугле что-то нету http://www.google.com.ua/#hl=uk&q=perl...f5056a779b927eb |
|||
|
||||
gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
подскажите, почему когда я пытаюсь написать
он пишет Offset outside string at ./shiz.pl line 95. |
|||
|
||||
gcc |
|
||||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
подскжаите почему данный код
выдает ошибку и не записывает
на эту строку, я так понял die "sdss:: $!\n" if $written != length($string); # Закрытие файла |
||||
|
|||||
Bulat |
|
|||
![]() татарский Нео ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1701 Регистрация: 22.3.2006 Где: Альметьевск Репутация: нет Всего: 57 |
gcc, мне кажется это "железной головой" не решить.. Во-первых нужно обратиться к функциям tell и seek - это конкретная позиция в файле, возможно есть смысл изучить как в файле ообозначется новый абзац, возможно, символ "\n" и "\s" (пробел) - более чем один раз.. присваиваешь local $/ = <необходимый набор символов> и считываешь поабзацно файл
![]() Вообщем-то, на мой взгляд - без доли эвристики не обойтись ![]() -------------------- менеджер по кодеврайтингу ![]() |
|||
|
||||
gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
понятно, я вот нашел http://www.spravkaweb.ru/perl/print#truncate сделал не много по другому, результат другой
обзац подсчитал, вывел tell байт переместился туда на seek и +-1 байт интересно, а почему syswrite не работает? я взял пример из книги (из документации одинаковая: http://www.realcoding.net/teach/perl/7/Index2.htm http://valera.asf.ru/perl/book/6/6.4.html http://stfw.ru/page.php?id=4066 ) (я думал что синтаксическая ошибка в скрипте, но не нашел ее) Это сообщение отредактировал(а) gcc - 21.11.2009, 23:42 |
|||
|
||||
amg |
|
||||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1145 Регистрация: 3.8.2006 Где: Новосибирск Репутация: нет Всего: 50 |
|
||||
|
|||||
gcc |
|
|||
![]() Агент алкомафии ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2691 Регистрация: 25.4.2008 Где: %&й Репутация: нет Всего: 17 |
amg, сори, забыл написать что написал
подскажите как сделать чтобы файл заблокировать? чтобы скрипт одновременно не открыл файл перед чтение и перед записью? функция read не читаете если файл открыт для записи!! ">" по этому приходиться сначало открыть, потом закрыть, потом опять открыть и закрыть (3 раз тут я еще открыл чтобы найти абзац) нужно заблокирвоать первый раз после open для чтения? или нет? а после записи открыть просто?
Это сообщение отредактировал(а) gcc - 23.11.2009, 14:45 |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Perl: Регулярные выражения | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |