Я полностью заблудился из-за проблем с кодировкой, я понятия не имею, что происходит, в чем конкретно проблема и как ее исправить.
По сути, я просто пытаюсь прочитать HTML-файл из Zip-файла, проанализировать его и затем вывести части в XML. Теперь что-то странное происходит с текстом, который я получаю из парсера.
При разборе HTML вместо пробела я получаю á
, только если я пишу на экран. Если я сохраню его в переменной и запишу в файл, он будет хорошо выглядеть в файле. Однако даже если в XML это выглядит правильно, с ним что-то не так, мой синтаксический анализатор PHP не может разобрать этот XML, и, похоже, IE это не нравится.
Сначала нужно было mb_convert_encoding($xmlcontent, "ASCII");
, чтобы я мог получить этот XML для анализа в PHP.
Есть идеи, в чем моя проблема?
извлечение HTML из .tar.gz
файла с использованием Perl
my $tar = Archive::Tar->new;
$tar->read("myfile.tar.gz");
$tar->extract_file('index.html', 'output.html');
загрузить HTML, вот тут-то и начинает становиться фанк, я получаю вывод вроде Numberáofásourceálines
my $tree = HTML::TreeBuilder->new;
$tree->parse_file('output.html') or die $!;
$tree->elementify;
запись в XML
my $output = new IO::File(">output.xml");
my $writer = new XML::Writer(OUTPUT => $output, DATA_MODE => 1,DATA_INDENT => 2);