metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2008-11-04 10:05 am

Ruby

Собаки бешеные.
Вывожу бинарную строку stdout.print - это пачвярие заменяет 0A на 0D0A :)

[identity profile] mr-aleph.livejournal.com 2008-11-04 08:30 am (UTC)(link)
если ты это узнал под виндой перенаправив ввывод в файл, то они тут не виноваты.

просто попробуй сделать тоже самое с
#include <cstdio>

int main() {
  printf("x\n");
  return 0;
}


тут дело скорее всего в том, что stdout открыт в текстовом, а не бинарном режиме, что и приводит к конверсии между окончаниями строк. вообщем CRT виновата, а не Руби.
Edited 2008-11-04 08:36 (UTC)

[identity profile] metaclass.livejournal.com 2008-11-04 08:45 am (UTC)(link)
Да, на C тоже самое блин, откуда у меня в консоли компилятор С, я им пользуюсь то раз в 10 лет\

И скорее всего в стандарте руби не предусмотрено переключение его в бинарный режим, что-то я такое в гуглах читал.
Забить, выведу во временный бинарный файл, все равно в винде перенаправление на всякой бинарщине тупит постоянно.

[identity profile] psilogic.livejournal.com 2008-11-04 10:22 am (UTC)(link)
stdout - это тебе не файл, это жопа :)

[identity profile] kiryl.livejournal.com 2008-11-04 10:30 am (UTC)(link)
А вызвать $stdout.binmode перед print не помогает?

Опять грабли заботливо разложенные M$.

[identity profile] metaclass.livejournal.com 2008-11-04 10:37 am (UTC)(link)
Помогло. Осталось понять, почему я эту хрень не смог найти в гугле по ключевым словам "ruby stdout binary mode" c первого раза. Сейчас уже нашлась :)

[identity profile] kiryl.livejournal.com 2008-11-04 10:39 am (UTC)(link)
Только помни, что обратно в non-binary режим уже не вернуться :)

[identity profile] metaclass.livejournal.com 2008-11-04 10:45 am (UTC)(link)
Угу, это я уже прочел :)

[identity profile] kiryl.livejournal.com 2008-11-04 10:26 am (UTC)(link)
#include <cstdio>

Какой у вас замечательный C. По рукам за такое.

[identity profile] mr-aleph.livejournal.com 2008-11-04 10:29 am (UTC)(link)
вау, прибыли телепаты, с чего вы взяли, что это C?

[identity profile] jtootf.livejournal.com 2008-11-04 03:26 pm (UTC)(link)
так на то они и телепаты :)

[identity profile] bigfrogg.livejournal.com 2008-11-04 11:16 am (UTC)(link)
Тогда ок)