#!/usr/bin/perl { package Handler; use strict; use warnings; use encoding 'utf8'; sub new { bless +{} } } use strict; use warnings; use encoding 'utf8'; use XML::SAX::ParserFactory; $XML::SAX::ParserPackage = "XML::LibXML::SAX"; open (my $file, '<:encoding(utf8)', 'train.m.xml'); my $parser = XML::SAX::ParserFactory->parser( "Handler" => Handler->new() ); $parser->parse_file($file);