Автор Тема: XML::Parser и русский язык  (Прочитано 4300 раз)

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

Оффлайн Troum

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 71
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
XML::Parser и русский язык
« : 03 Марта 2003, 15:48:10 »
Недавно начал разбираться с XML и споткнулся вот на какой проблеме :
при проверке корректности XML-файла с помощью XML::Parser появляется ошибка при попытке использовать кириллицу в файле, при включении кодировки в объявление файла

перл выдает ощибку:
Couldn\'t open encmap windows-1251.enc:
No such file or directory
 at C:/Perl/site/lib/XML/Parser.pm line 168

Что бы это значило и как победить?
Использую Perl 5.6 под win

Оффлайн mike

  • ProPerl\'er
  • Старожил
  • ****
  • Сообщений: 435
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
XML::Parser и русский язык
« Ответ #1 : 03 Марта 2003, 16:43:46 »
Прочти доку к модулю. Там в самом конце все написано.
[ основной браузер когда-то был, теперь попробуй разберись =]

Оффлайн Troum

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 71
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
XML::Parser и русский язык
« Ответ #2 : 03 Марта 2003, 17:02:13 »
Перерыл все доки - ничего не нашел
Может, подскажешь, где смотреть?

Оффлайн Troum

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 71
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
XML::Parser и русский язык
« Ответ #3 : 03 Марта 2003, 17:29:14 »
Все, решил проблему
Не хватало файла кодировки
Нашел, поставил и все ОК :)

Оффлайн mike

  • ProPerl\'er
  • Старожил
  • ****
  • Сообщений: 435
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
XML::Parser и русский язык
« Ответ #4 : 03 Марта 2003, 17:29:23 »
Из доки к XML::Parser:

ENCODINGS
XML documents may be encoded in character sets other than Unicode as long as they may be mapped into the Unicode character set. Expat has further restrictions on encodings. Read the xmlparse.h header file in the expat distribution to see details on these restrictions.

Expat has built-in encodings for: UTF-8, ISO-8859-1, UTF-16, and US-ASCII. Encodings are set either through the XML declaration encoding attribute or through the ProtocolEncoding option to XML::Parser or XML::Parser::Expat.

For encodings other than the built-ins, expat calls the function load_encoding in the Expat package with the encoding name. This function looks for a file in the path list @XML::Parser::Expat::Encoding_Path, that matches the lower-cased name with a \'.enc\' extension. The first one it finds, it loads.

If you wish to build your own encoding maps, check out the XML::Encoding module from CPAN.
[ основной браузер когда-то был, теперь попробуй разберись =]

 

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