Автор Тема: Записать в файл символ 0x0A  (Прочитано 2814 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Evgeny

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 272
  • +0/-0
  • 0
    • Просмотр профиля
Записать в файл символ 0x0A
« : 22 Января 2002, 14:08:34 »
Привет всем.
Подскажите пожалуйста, как можно строку, в которой символ 0x0A содержится, в файл записать. Перл шутит со мной и в файле я вижу 0x0D 0x0A вместо 0x0A.
Большое спасибо.

Оффлайн vladsu

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 271
  • +0/-0
  • 0
    • Просмотр профиля
    • http://vladislavsurguchev.eu/
Записать в файл символ 0x0A
« Ответ #1 : 22 Января 2002, 14:25:50 »
Hi.

Под виндами?
----------------------------------------------
Мой сайт чёрно-белых фотографий из разных уголков мира тут

Оффлайн Evgeny

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 272
  • +0/-0
  • 0
    • Просмотр профиля
Записать в файл символ 0x0A
« Ответ #2 : 22 Января 2002, 14:57:54 »
vladsu
Цитировать
Под виндами?


Да, по виндами.
Приведу код:


open(F,">aaa");
binmode(F);            # без этого тоже не работает
print F packData(1,"12345678");
close(F);

sub packData
{  return sprintf("%c%c%s",$_[0],length($_[1])+2,$_[1]);
}


Из дампа видно вместо второго байта 0x0A - два байта 0x0D 0x0A

Оффлайн lodevar

  • Сеньор-Помидор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 757
  • +0/-0
  • 2
    • Просмотр профиля
    • http://lodevar.hut.ru
Записать в файл символ 0x0A
« Ответ #3 : 22 Января 2002, 15:13:54 »
Да вроде все правильно выводит.
первый %c выводит 01, другой %c выводит 0A
Убери первый - будет тебе один 0A

А если ты объяснишь что ты вообще хочешь видеть , может и подскажут тебе что-нибудь.
С наилучшими пожеланиями. LODEVAR

Оффлайн Evgeny

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 272
  • +0/-0
  • 0
    • Просмотр профиля
Записать в файл символ 0x0A
« Ответ #4 : 22 Января 2002, 15:15:22 »
Спасибо, всё работает. С FAR\'ом просто перемудрил.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28