Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PERL) Кодировка результата / 7 сообщений из 7, страница 1 из 1
07.02.2006, 05:56
    #33527351
Дикий Билл
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PERL) Кодировка результата
Здравствуйте. Я только начинаю с перл, поэтому мож глупый вопрос, но важный для меня.
Использую (начинаю) перл для администрирования MS SQL. Хочу вывести результат запроса. Он выводится в дос-кодировке. Мне подсказали примерный код для перекодирования
Код: plaintext
1.
2.
3.
4.
5.
#!/usr/bin/perl
use Text::Iconv;
$converter = Text::Iconv->new("windows-1251", "koi8-r");
$osql = 'osql -S(local) -d subsidy -i"c:\\script.sql" -E';
@rs = `$osql` or die "Couldn't open $osql\n";
print @rs;
Но ругается на use Text::Iconv; Нет его. Вот собственно и вопрос где вообще качивают эти модули и где конкретно этот?
----------------------------------
- О каком Диком Билле ты говоришь?
- Есть лишь один Дикий Билл.
...
Рейтинг: 0 / 0
07.02.2006, 10:01
    #33527627
Black
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PERL) Кодировка результата
Привет!
Модули качаются с CPAN , вот он этот модуль Text::Iconv - Perl interface to iconv() codeset conversion function .
Устанавливать не сложно, почитайте Справочное руководство "Установка perl-модулей" PDF , HTML версия
Будут вопросы, спрашивайте!
...
Рейтинг: 0 / 0
07.02.2006, 10:07
    #33527654
Black
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PERL) Кодировка результата
Хочю добавить, Вы уверены, что он выводиться в DOS кодировке? такое происходит, если данные УЖЕ храняться в MSSQL в DOS кодировке!

рекомундую посмотреть в сторону модуля Encode - character encodings
...
Рейтинг: 0 / 0
07.02.2006, 10:12
    #33527675
Дикий Билл
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PERL) Кодировка результата
Спасибо. Почитаю. Здесь именно дос-кодировка. osql.exe так работает...
----------------------------------
- О каком Диком Билле ты говоришь?
- Есть лишь один Дикий Билл.
...
Рейтинг: 0 / 0
07.02.2006, 10:54
    #33527847
Дикий Билл
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PERL) Кодировка результата
Как использовать Encode?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
#!/usr/bin/perl
use Encode;
#$osql = 'osql -S(local) -d subsidy -Q"select top 10 client_id from client" -E -h-1';
$osql = 'osql -S(local) -d subsidy -i"c:\\script.sql" -E';
@rs = `$osql` or die "Couldn't open $osql\n";
foreach(@rs)
{
 Encode->from_to($_, "iso-8859-1", "сp1251");
print $_;
}
Кстати, какая кодировка русская дос? пока поставил наугад, просто чтоб работало, но не работает. Пишет
Unknown encoding '1> 2> 3> client_id surname
' at 'C:\noname3.pl' line 8

----------------------------------
- О каком Диком Билле ты говоришь?
- Есть лишь один Дикий Билл.
...
Рейтинг: 0 / 0
07.02.2006, 11:01
    #33527875
Дикий Билл
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PERL) Кодировка результата
Как работать разобрался :)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
#!/usr/bin/perl
use Encode;
$osql = 'osql -S(local) -d subsidy -i"c:\\script.sql" -E';
@rs = `$osql` or die "Couldn't open $osql\n";
foreach(@rs)
{
Encode::from_to($_, "iso-8859-1", "iso-8859-1");
print $_;
}
осталось только узнать что писать тут "iso-8859-1", "iso-8859-1" ?
Подскажите. Нужно с дос на виндовс
----------------------------------
- О каком Диком Билле ты говоришь?
- Есть лишь один Дикий Билл.
...
Рейтинг: 0 / 0
07.02.2006, 11:08
    #33527907
Дикий Билл
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
(PERL) Кодировка результата
Все. Разобрался. Николай - спасибо большое.
Encode::from_to($_, "cp866", "windows-1251");
----------------------------------
- О каком Диком Билле ты говоришь?
- Есть лишь один Дикий Билл.
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / (PERL) Кодировка результата / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]