2011-08-22 2 views
2

XML 문서의 모든 요소를 ​​배열로 가져 오기 위해 Perl 스크립트를 실행하려고합니다. 다음과 같이 코드는 : 나는 MSWIN32-86-멀티 스레드 내장에서 ActivePerl (v5.14.1)를 사용하고Perl XML :: Simple을 사용하여 'well-formed'오류가 발생했습니다.

Use of tied on a handle without * is deprecated at C:/Perl/lib/XML/Parser/Expat.pm line 447. 

not well-formed (invalid token) at line 4, column 14, byte 128 at C:/Perl/lib/XML/Parser.pm line 187 

:이 코드를 실행하면

#!/usr/bin/perl 

# Script to illustrate how to parse a simple XML file 
# and dump its contents in a Perl hash record. 

use strict; 
use XML::Simple; 

my $xs = new XML::Simple(); 

my $booklist = $xs->XMLin('./cmn_msg.xml'); 

print Dumper($data); 

, 나는 오류가 발생합니다. Win7에서이 스크립트를 실행하려고합니다.

+0

$ 데이터가 제공에서를? –

+0

복사하여 붙여 넣을 때 얻을 수있는 것들 ..... – Bruce

답변

7

But when I run this code, I get an error: Use of tied on a handle without * is deprecated at C:/Perl/lib/XML/Parser/Expat.pm line 447.

오류가 아닌 경고처럼 들립니다. 오래된 XML :: Parser 설치가 있습니다.

not well-formed (invalid token) at line 4, column 14, byte 128 at C:/Perl/lib/XML/Parser.pm line 187

XML이 깨졌습니다. XML을 수정해야합니다.

+1

경고는 XML :: Parser가 아니라 XML :: Simple에서 발생합니다. 버전 2.41에서는 (https://rt.cpan.org/Ticket/Display.html?id=67207) 수정되었습니다. – cjm