|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » вопрос по Perl |
|
|
вопрос по Perl
|
Ветеран Сообщения: 1404 |
Почему Perl заменяет символ \x0a на \x0d\x0a ?
Например, в таком случае open (READ, "<wuaucpl.cpl"); open (WRITE, ">write.cpl"); while(<READ>){ print WRITE $_;} close READ; close WRITE; Размер нового файла увеличился на несколько байт, хотя этого ни в коем случае не должно происходить. Как этого избежать? |
|
Отправлено: 12:17, 25-11-2004 |
Старый параноик Сообщения: 2423
|
Профиль | Отправить PM | Цитировать Вопросы по Perl'у быстрее решаются у нас Вебмастерами.
|
Отправлено: 12:21, 25-11-2004 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ночной странник Сообщения: 4050
|
Профиль | Сайт | Отправить PM | Цитировать mrcnn
наверно \x0a == \n тогжа это прописано в настройках и это правильно иначе неправильно будет отобразаться текст! |
Отправлено: 12:35, 25-11-2004 | #3 |
Ветеран Сообщения: 1404
|
Профиль | Отправить PM | Цитировать \n в виндозе == \x0d\x0a
В Unixe действительно \n==\x0a Как все-таки сделать так, чтобы размеры файлов wuaucpl.cpl и write.cpl и их содержимое полностью совпадали?? |
Отправлено: 12:59, 25-11-2004 | #4 |
Ночной странник Сообщения: 4050
|
Профиль | Сайт | Отправить PM | Цитировать mrcnn
линукс прекрастно поримает и \x0d\x0a в качестве перевод астроки! а почему тебе просто не скопировать файл? |
|
Отправлено: 15:33, 25-11-2004 | #5 |
Ветеран Сообщения: 1404
|
Профиль | Отправить PM | Цитировать Vlad Dracula:
Я привел упрощенный пример. На самом деле задача несколько другая, которая простым копированием не решается. Нужно открыть бинарный файл и заменить строку другой строкой; при этом размер файла не должен меняться. (У меня стоит Windows.) Заменять вручную очень-очень долго, потому что строка может встречаться несколько тысяч раз |
Последний раз редактировалось mrcnn, 25-11-2004 в 15:57. Отправлено: 15:49, 25-11-2004 | #6 |
Ночной странник Сообщения: 4050
|
Профиль | Сайт | Отправить PM | Цитировать mrcnn
а как ты определяешь какую строчку тебе надо заменить? |
Отправлено: 15:52, 25-11-2004 | #7 |
Ветеран Сообщения: 1404
|
Профиль | Отправить PM | Цитировать Строки которые нужно заменить и на что заменить заранее известны, причем строки бинарные.
|
Отправлено: 16:00, 25-11-2004 | #8 |
Ветеран Сообщения: 1404
|
Профиль | Отправить PM | Цитировать Например: \x43\x00\x3a\x00\x5c
|
Отправлено: 16:03, 25-11-2004 | #9 |
just mar Сообщения: 3904
|
Профиль | Отправить PM | Цитировать Цитата:
![]() |
|
Отправлено: 16:33, 25-11-2004 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
FreeBSD 5.3 Perl не видит локали, а KDE при сборке не видит perl :o | mar | Общий по FreeBSD | 8 | 06-05-2005 13:13 | |
Perl | Patrick | Программирование и базы данных | 3 | 02-06-2004 23:27 | |
Ламерский вопрос по Perl | Patrick | Программирование и базы данных | 1 | 30-03-2004 03:18 | |
Perl | Guest | Программирование и базы данных | 2 | 08-03-2004 23:00 | |
Вопрос по Perl | Guest | Программирование и базы данных | 4 | 04-12-2002 15:32 |
|