nataraj: (Real Me)
[personal profile] nataraj
[livejournal.com profile] alexkuklin, пожалуйста опубликуй у себя ссылку, если проблема конечно не очевидная... а то у меня тут любителей перла раз два и обчелся...

Берем xml файл
====================================================
<?xml version="1.0" encoding="UTF-8"?>
<root>
  <p>«English Text»</p>
  <p>«Русский текст»</p>
</root>
====================================================

берем скрипт
====================================================
#!/usr/bin/perl

use strict;
use XML::DOM;

my $parser = new XML::DOM::Parser;
my $doc = $parser->parsefile ('test.xml');

$doc->printToFile ('result.xml');
====================================================
На выходе теряем кавычки в английском тексте
====================================================
<?xml version="1.0" encoding="UTF-8"?>
<root>
  <p>English Text</p>
  <p>«Русский текст»</p>
</root> 
====================================================
Если смотреть на файл результата в кодировке KOI-8
====================================================
<?xml version="1.0" encoding="UTF-8"?>
<root>
  <p>╚English Text╩</p>
  <p>б╚п═я.я.я.п╨п╦п╧ я.п╣п╨я.я.б╩</p>
</root>
====================================================
То видно, что кавычки не то чтобы совсем теряются, а просто отображаются каким-то другим символом, который в последствии при открытие файла нормальным utf-8 редактором игнорируется...

Можете ли вы это как-то конструктивно прокомментировать... Чья это проблема? Перла, XML::DOM'а? Куда копать?
У меня perl v5.8.4 XML::DOM v1.43. Какие еще версии привести -- я не знаю...

Приведенные выше текста можно быстро скачать здесь
http://shaplov.ru/files/utf-8_PerlTest.tgz
чтобы не мучатся с копипастом.

Profile

nataraj: (Default)
Swami Dhyan Nataraj

July 2024

S M T W T F S
 123456
789 10111213
14151617181920
21222324252627
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 20th, 2026 12:08 am
Powered by Dreamwidth Studios