![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| Suppir |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 588 Регистрация: 20.4.2009 Репутация: нет Всего: нет |
Добрый день!
Использую скрипт для парсинга текстовых файлов в кодировке DOS. Сам скрипт тоже в кодировке DOS. В начале скрипта есть запись: use locale; use POSIX qw(locale_h); setlocale(LC_ALL,"Russian_Russia.866"); данные считываются нормально. Однако для записи результата мне нужно указать файл с русским именем "результат.txt". При этом вместо названия файла получается абракадабра. Я знаю, что чтобы файл создался с русским именем необходимо задавать кодировку ANSI. Примечание. Файл создается с помощью строки $out = new IO::File ">result/$name.txt" Вопрос. Как везде использовать кодировку DOS. Однако для вывода использовать ANSI? |
|||
|
||||
| ming |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 97 Регистрация: 30.1.2009 Где: Новосибирск Репутация: 2 Всего: 3 |
может быть
? |
|||
|
||||
| Suppir |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 588 Регистрация: 20.4.2009 Репутация: нет Всего: нет |
ming, если убрать локаль, то будет печататься в той же кодировке, что и сам файл pl. То есть в DOS. А нужно напечатать в ANSI(CP1251)
Добавлено через 5 минут и 47 секунд Если пишу в начале use locale; use POSIX qw(locale_h); setlocale(LC_ALL,"ru_Ru.CP1251") || die "no locale"; то пишет, что нет такой локали :*( Perl 5.12 от Activestate |
|||
|
||||
| Suppir |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 588 Регистрация: 20.4.2009 Репутация: нет Всего: нет |
Получилось решить следующим способом. Кодировка скрипта - DOS.
В итоге вся работа проводится в DOS, но только для создания имени файла используется ANSI |
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |