VDS за 300р от нашего партнера SpaceWeb
[61]
07 Янв 2012, 15:21

Русская кодировка символов в консоли

Привет!

Делаю одиночную программу которая должна запускаться из консоли и выводить на экран информационные сообщения. Проблема в том, что сообщения выводятся кракозябрами. Как я понимаю проблема в кодировки. У меня стоит cp1251, но как я понимаю консоль Windows её не поддерживает.

Комментарии (1)
telescop 07.01.2012 16:22

Вы правы, нужно переводить кодировку в cp866. Это можно сделать например так.

#!/usr/bin/perl -w
use Encode qw(encode decode);
$text = "Текст который вы хотите вывести";
$text = Encode::encode('cp866', Encode::decode('cp1251', $text));
print $text;

Или сделать программу для удобства, например если у вас несколько выводов.

#!/usr/bin/perl -w
use Encode qw(encode decode);

print_enc("Текст который вы хотите вывести");

sub print_enc{
my $text = shift;
my $from = shift||"cp1251";
my $to = shift||"cp866";
$text = Encode::encode($to, Encode::decode($from, $text));
print $text;
}
+1

Добавить комментарий

Войдите, чтобы написать о чем-нибудь...
Вход Регистрация
Web.onRails
Найди ответ на любой вопрос по Веб-разработке!
задать вопрос...
Вы можете разместить Рекламный пост самостоятельно, либо отправив контент по адресу admin@webonrails.ru→ Оплата здесь ←Неоплаченные посты удаляются.
Метки:
Лучшее
[52]
16 Окт 2011, 15:38
Вывести все элементы POST
[просмотров 22417]
[100]
19 Дек 2014, 16:16
User-agent для Internet Explorer 11
[просмотров 16464]
[74]
31 мая 2011, 11:48
Python проверка существования переменной
[просмотров 13063]
[125]
21 Июл 2011, 14:04
Python Imaging Library (PIL)
[просмотров 10099]
[4]
10 Окт 2018, 15:33
Как запретить просмотр сайта по IP?
[просмотров 9881]
[315]
11 Авг 2011, 00:21
Спецификация HTML5 от W3C
[просмотров 7419]
[50]
31 Дек 2011, 14:57
Cron запускать раз в неделю
[просмотров 6727]

Вести с Хабра